So verstehen Sie die Routing-Tabelle auf einem OpenVPN-Client

12

Ich habe gerade das OpenVPN eingerichtet und es funktioniert wie erwartet. Die Routing-Tabelle des Clients verwirrt mich jedoch bis zum Äußersten. Hier ist die Routentabelle:

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.8.0.5        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
10.8.0.1        10.8.0.5        255.255.255.255 UGH   0      0        0 tun0
54.202.18.143   10.0.2.2        255.255.255.255 UGH   0      0        0 eth0
10.0.2.0        0.0.0.0         255.255.255.0   U     1      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth0
0.0.0.0         10.8.0.5        128.0.0.0       UG    0      0        0 tun0
128.0.0.0       10.8.0.5        128.0.0.0       UG    0      0        0 tun0
0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 eth0

Lassen Sie es uns also Zeile für Zeile zerlegen

  1. Jedes Paket, für 10.8.0.5das bestimmt ist, hat kein Gateway und wird verwendettun0
  2. Jedes Paket, für 10.8.0.1das bestimmt ist, wird 10.8.0.5als Gateway über verwendettun0
  3. Jedes Paket, für 54.202.18.143das bestimmt ist, wird 10.0.2.2als Gateway über verwendeteth0
  4. Jedes Paket, für 10.0.2.0/24das bestimmt ist, hat kein Gateway und wird verwendeteth0
  5. Ignorieren wir den Teil 169.254.0.0
  6. Alle anderen Pakete (für die bestimmt sind 0.0.0.0) werden uns 10.8.0.5als Standard-Gateway über tun0. Das ist also das Standard-Gateway, nicht wahr?
  7. Jedes Paket, für 128.0.0.0/7das bestimmt ist, wird 10.8.0.5als Standard-Gateway über verwendettun0
  8. Alle anderen Pakete ( 0.0.0.0) werden 10.0.2.2als Standard-Gateway über verwendeteth0

Fragen:

  • Habe ich 2 Standard-Gateways, wenn wir Punkt 6 und 8 berücksichtigen? (Es kann jedoch nur 1 Standard-Gateway geben, daher weiß ich, dass ich falsch liege, kann es aber nicht rechtfertigen) ( wahrscheinlich beantwortet, siehe unten )
  • In Anbetracht der Punkte 1 und 2 wird für 10.8.0.1nichts wirklich ein Gateway über tun0 verwendet. Ist das richtig?
  • In Anbetracht der Punkte 3 und 4 verwendet alles, was angestrebt 54.202.18.143wird, kein Gateway über eth0. Ist das richtig?

AKTUALISIEREN...

Nachdem ich dies gelesen hatte , fand ich weitere Informationen. Die folgenden Zeilen sind für mich jetzt sehr sinnvoll:

0.0.0.0         10.8.0.5        128.0.0.0       UG    0      0        0 tun0
128.0.0.0       10.8.0.5        128.0.0.0       UG    0      0        0 tun0

Die erste Zeile definiert also 0.0.0.0/128.0.0.0und die zweite definiert 128.0.0.0/128.0.0.0. Im Wesentlichen:

0.0.0.0/128.0.0.0 = 0.0.0.0/1 = 0.0.0.0 TO 127.255.255.255
128.0.0.0/128.0.0.0 = 128.0.0.0/1 = 128.0.0.0 TO 255.255.255.255

Die beiden oben genannten Routen decken also den gesamten IPv4-Adressbereich ab [0.0.0.0 TO 255.255.255.255]. Es ist eine clevere Möglichkeit von OpenVPN, eine Standardroute hinzuzufügen, ohne die ursprüngliche Standardroute zu ersetzen, und diese Standardroute wird über weitergeleitet tun0.

Ich glaube, ich habe eine Antwort auf meine erste Frage:

Habe ich 2 Standard-Gateways, wenn wir Punkt 6 und 8 berücksichtigen?

NEIN, es gibt nur ein Standard-Gateway und das ist:

0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 eth0
Slayedbylucifer
quelle
2
Die erste 0.0.0.0Route hat Genmask, 128.0.0.0was sie wahrscheinlich nicht zu einer Standardroute macht. Ich muss allerdings sagen, dass ich nicht die geringste Ahnung habe, was diese Maske bedeutet und wofür die Route da ist: /
Martin von Wittich
Beachten Sie auch, dass das Routing von 128.0.0.0 in Ihrem Netzwerk wirklich seltsam ist, da es sich um eine öffentliche IP-Adresse handelt oder reserviert ist.
Ich erinnere
Der 128.0.0.0 Teil kommt von openvpn. es wird hier
slayedbylucifer
Sie sollten Ihr "UPDATE" in eine Antwort verwandeln, da es genau dies ist: eine Antwort, die mir half, genau das Problem zu verstehen, das ich hatte :)
WoJ
@slayedbylucifer Die Erklärung für 128.0.0.0 scheint nicht verfügbar zu sein und es ist kein Archiv verfügbar. Haben Sie zufällig einen Online-Link dazu?
SaAtomic

Antworten:

3

Habe ich 2 Standard-Gateways, wenn wir Punkt 6 und 8 berücksichtigen? (Es kann jedoch nur 1 Standard-Gateway geben, daher weiß ich, dass ich falsch liege, kann es aber nicht rechtfertigen) (wahrscheinlich beantwortet, siehe unten)

Die 6. Zeile definiert den Bereich 0.0.0.0 - 127.255.255.255 und die 7. Zeile definiert den Bereich 128.0.0.0 - 255.255.255.255.

Habe ich 2 Standard-Gateways, wenn wir Punkt 6 und 8 berücksichtigen?

NEIN, es gibt nur ein Standard-Gateway und das ist:

0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 eth0

In Anbetracht der Punkte 1 und 2 verwendet für 10.8.0.1 kein Gateway über tun0. Ist das richtig?

Nein, nicht korrekt, Pakete, die für 10.8.0.1 bestimmt sind, werden an 10.8.0.5 weitergeleitet (auf das über tun0 lan zugegriffen werden kann, wie in der ersten Zeile festgelegt).
Sie hatten Recht, wenn die Netzmaske nicht 255.255.255.255 war

In Anbetracht der Punkte 3 und 4 verwendet für 54.202.18.143 kein Gateway über eth0. Ist das richtig?

Nein, nicht korrekt. Pakete, die für 54.202.18.143 bestimmt sind, werden an 10.0.2.2 weitergeleitet (ein weiterer Host auf eth0 lan, auf den über die 4. Zeile zugegriffen werden kann).

Arash
quelle
Die erste Frage wird von Ihnen selbst beantwortet. Ich wollte nur, dass die Antwort vollständig ist, also habe ich sie erneut erwähnt.
Arash