Comment configurer la table de routage pour ajouter la passerelle correcte?

3

Je reçois cette erreur lorsque j'essaie d'envoyer une requête ping à 8.8.8.8 à partir de ma machine virtuelle:

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
From 172.30.8.135: icmp_seq=1 Redirect Host(New nexthop: 172.30.8.254)
From 172.30.8.135: icmp_seq=2 Redirect Host(New nexthop: 172.30.8.254)

Lorsque j'essaie wget http://www.google.com, j'échoue : la connexion a expiré.

Voici le résultat de la route -n:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.30.8.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0      172.30.8.135       0.0.0.0   UG     0      100       0 eth0

Voici à quoi ressemble mon réseau: J'ai créé br0 en tant que pont sur eth0 pour exécuter cette machine virtuelle. L’hôte a cette adresse IP 172.30.8.135.

L’hôte a accès à Internet via eth0. Il s’agit de la sortie de route à l’intérieur de l’hôte:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.30.8.0      0.0.0.0         255.255.255.0   U     0      0        0 br0
0.0.0.0         172.30.8.254    0.0.0.0         UG    100    0        0 br0

Merci d'avance pour tout indice!

Zenet
la source

Réponses:

2

eth0 doit être en mode promisc pour transmettre le trafic au pont

ma configuration est eth0 physique dans promisc sans adresse ip, br0 avec un ip dhcp et utilisant le pont comme "interface" pour la machine matérielle avec une route vers la passerelle depuis dhcp, puis une interface tap ajoutée au pont et c’est utilisé comme une interface "pontée" dans le produit de virtualisation. Est ce que ça aide?

un tutoriel sur la configuration de la virtualisation avec des interfaces tap et accessibilité: http://www.blindhog.net/linux-bridging-for-gns3-lan-communications/

RobotHumans
la source
1
pas dans la VM, sur votre eth0 physique ... vous pouvez donner une adresse IP à votre br0 et l'utiliser éventuellement pour naviguer à partir de la machine physique si nécessaire
RobotHumans
1
réponse modifiée pour être plus clair, je pense
RobotHumans
1
vous n'avez pas besoin de définir promisc sur br0 ... ifconfig br0 dhcp && ifconfig br0 down && ifconfig br0 up devrait le faire
RobotHumans
1
quelle est la sortie de brctl show
RobotHumans
1
ajouter une interface de tap: sudo tunctl -t tap0
RobotHumans
1

Dans mon cas, j'ai aidé iptables sur le routeur:

iptables -A POSTROUTING --table nat ! -o tap0 -j MASQUERADE
Pevik
la source