comment comprendre la table de routage sur un client OpenVPN

13

Je viens de configurer OpenVPN et cela fonctionne comme prévu. Cependant, la table de routage du client me déroute sans fin. Voici le tableau des itinéraires:

# 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

Permet donc de le disséquer ligne par ligne

  1. Tout paquet destiné à 10.8.0.5n'a pas de passerelle et utiliseratun0
  2. tout paquet destiné 10.8.0.1sera utilisé 10.8.0.5comme passerelle viatun0
  3. tout paquet destiné 54.202.18.143sera utilisé 10.0.2.2comme passerelle viaeth0
  4. tout paquet destiné à 10.0.2.0/24n'a pas de passerelle et utiliseraeth0
  5. Permet d'ignorer la partie 169.254.0.0
  6. Tous les autres paquets (destinés à 0.0.0.0) nous serviront 10.8.0.5de passerelle par défaut via tun0. C'est donc la passerelle par défaut, n'est-ce pas?
  7. Tout paquet destiné 128.0.0.0/7sera utilisé 10.8.0.5comme passerelle par défaut viatun0
  8. Tous les autres paquets ( 0.0.0.0) utiliseront 10.0.2.2comme passerelle par défaut viaeth0

Des questions:

  • Ai-je 2 passerelles par défaut si nous considérons les points 6 et 8? (il ne peut y avoir qu'une seule passerelle par défaut, donc je sais que je me trompe mais je ne peux pas justifier) ​​( probablement répondu, voir ci-dessous )
  • Compte tenu des points 1 et 2, tout ce qui se passe 10.8.0.1n'utilise pas vraiment de passerelle via tun0. Est-ce correct?
  • Compte tenu des points 3 et 4, tout ce qui se passe 54.202.18.143n'utilise pas vraiment de passerelle via eth0. Est-ce correct?

MISE À JOUR...

Après avoir lu ceci , j'ai trouvé plus d'informations. Les lignes ci-dessous ont beaucoup de sens pour moi maintenant:

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

Ainsi, la 1ère ligne définit 0.0.0.0/128.0.0.0et la seconde définit 128.0.0.0/128.0.0.0. Essentiellement:

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

Ainsi, plus de 2 routes couvrent toute la plage d'adresses IPv4 [0.0.0.0 TO 255.255.255.255]. C'est un moyen intelligent d'OpenVPN pour ajouter une route par défaut sans remplacer la route par défaut d'origine et cette route par défaut sera acheminée via tun0.

Je pense donc avoir une réponse à ma première question:

Ai-je 2 passerelles par défaut si nous considérons les points 6 et 8?

NON, il n'y a qu'une seule passerelle par défaut et c'est:

0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 eth0
slayedbylucifer
la source
2
La première 0.0.0.0route a Genmask 128.0.0.0qui ne fait probablement pas d'elle une route par défaut. Je dois dire cependant que je n'ai pas la moindre idée de ce que signifie ce masque et quel est l'itinéraire est là pour: /
Martin von Wittich
Sachez également que le routage 128.0.0.0 à l'intérieur de votre réseau est vraiment étrange car c'est une adresse IP publique ou réservée, je ne
m'en souviens pas
La partie 128.0.0.0 provient de openvpn. il est expliqué ici
slayedbylucifer
Vous devriez transformer votre "MISE À JOUR" en une réponse car c'est juste ceci: une réponse qui m'a aidé à comprendre le même problème exact que j'avais :)
WoJ
@slayedbylucifer, l'explication de 128.0.0.0 semble être en panne et il n'y a aucune archive disponible. Avez-vous un lien en ligne à ce sujet?
SaAtomic

Réponses:

4

Ai-je 2 passerelles par défaut si nous considérons les points 6 et 8? (il ne peut y avoir qu'une seule passerelle par défaut, donc je sais que je me trompe mais ne peux pas justifier) ​​(probablement répondu, voir ci-dessous)

La 6ème ligne définit la plage 0.0.0.0 - 127.255.255.255 et la 7ème ligne définit la plage 128.0.0.0 - 255.255.255.255.

Ai-je 2 passerelles par défaut si nous considérons les points 6 et 8?

NON, il n'y a qu'une seule passerelle par défaut et c'est:

0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 eth0

Compte tenu des points 1 et 2, tout ce qui se passe pour 10.8.0.1 n'utilise pas vraiment de passerelle via tun0. Est-ce correct?

Non pas correct, les paquets destinés à 10.8.0.1 seraient routés vers 10.8.0.5 (qui est accessible par tun0 lan comme défini par la première ligne).
vous aviez raison si le masque de réseau n'était pas 255.255.255.255

Compte tenu des points 3 et 4, tout ce qui se passe pour 54.202.18.143 n'utilise pas vraiment de passerelle via eth0. Est-ce correct?

Non pas correct, les paquets destinés à 54.202.18.143 seraient routés vers 10.0.2.2 (qui est un autre hôte sur eth0 lan et est accessible par la 4ème ligne)

Arash
la source
La première question est répondue par vous-même. Je voulais juste que la réponse soit complète, donc je l'ai mentionnée.
Arash