Hallo BSD-Fans,
mein Wunsch ist ein redundanter Router, den ich mit CARP realisieren möchte. Bei den Testaufbauten gab es jedoch (unter FreeBSD 5.4, FreeBSD6.0, pfsense und auch OpenBSD 3.8) immer eine unlösbare Problemsituation, die sich mit folgenden Schritten nachvollziehen lässt:
1. Der Router (Router 1) verbindet zwei Netzwerke NETZ1 und NETZ2. Dieser Router wird geklont, zu Router 2 umbenannt, die "echten" IP Adressen abgeändert. Nun wird Router 2 paralell zu Router 1 ans Netzwerk angeschlossen. Auf beiden Routern wird CARP eingerichtet und 'sysctl -w net.inet.carp.preempt=1' ausgeführt.
2. CARP wird auf beiden Routern aktiviert, Router 1 ist mit beiden CARP Interfaces MASTER, Router 2 mit beiden BACKUP. Soweit ganz gut.
3. Ich trenne das Netzwerkkabel von Router 1 ins NETZ1. Da er auf diesem Interface keine Advertisments mehr von Router 2 sieht, bleibt Router 1 dort weiterhin Master.
4. Router 2 sieht mit seinem Interface in NETZ1 auch keine Advertisments mehr von Router 1 und und wird dort MASTER. Mit dem zweiten Interface bleibt er allerdings BACKUP.
5. Folgende Katastrophale Situation ist enstanden:
Für Datenpakete also zwei Sackgassen!
Meine Frage: Gibt es hier jemanden der CARP für Router einsetzt? Wie verhält sich euer "Cluster" in dieser Situation? Oder habe ich einen Denk- oder gar Konfigurationsfehler gemacht?
mein Wunsch ist ein redundanter Router, den ich mit CARP realisieren möchte. Bei den Testaufbauten gab es jedoch (unter FreeBSD 5.4, FreeBSD6.0, pfsense und auch OpenBSD 3.8) immer eine unlösbare Problemsituation, die sich mit folgenden Schritten nachvollziehen lässt:
1. Der Router (Router 1) verbindet zwei Netzwerke NETZ1 und NETZ2. Dieser Router wird geklont, zu Router 2 umbenannt, die "echten" IP Adressen abgeändert. Nun wird Router 2 paralell zu Router 1 ans Netzwerk angeschlossen. Auf beiden Routern wird CARP eingerichtet und 'sysctl -w net.inet.carp.preempt=1' ausgeführt.
2. CARP wird auf beiden Routern aktiviert, Router 1 ist mit beiden CARP Interfaces MASTER, Router 2 mit beiden BACKUP. Soweit ganz gut.
3. Ich trenne das Netzwerkkabel von Router 1 ins NETZ1. Da er auf diesem Interface keine Advertisments mehr von Router 2 sieht, bleibt Router 1 dort weiterhin Master.
4. Router 2 sieht mit seinem Interface in NETZ1 auch keine Advertisments mehr von Router 1 und und wird dort MASTER. Mit dem zweiten Interface bleibt er allerdings BACKUP.
5. Folgende Katastrophale Situation ist enstanden:
Code:
Router 1:
carp0 (ins NETZ1): MASTER (kabel nicht angeschlossen!)
carp1 (ins NETZ2): MASTER
Router 2:
carp0 (ins NETZ1): MASTER
carp1 (ins NETZ2): BACKUP
Für Datenpakete also zwei Sackgassen!
Meine Frage: Gibt es hier jemanden der CARP für Router einsetzt? Wie verhält sich euer "Cluster" in dieser Situation? Oder habe ich einen Denk- oder gar Konfigurationsfehler gemacht?