Назад | Перейти на главную страницу

Пакеты не проходят через шлюз Linux

Хост: centos6 с ip 10.10.11.36 и шлюзом 10.10.11.33

Гость две виртуальные машины с ip 10.10.11.60 и 10.10.11.57 и шлюзом хоста, т.е. 10.10.11.36

На хосте включена пересылка пакетов.

от гостей:

маршрут

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.10.11.36     0.0.0.0         UG    0      0        0 eth0
10.10.11.0      *               255.255.255.0   U     0      0        0 eth0

Вопрос 1: Когда google.com получает ping от гостя, почему он показывает перенаправить хост

PING google.com (173.194.36.7) 56(84) bytes of data.

64 bytes from bom04s01-in-f7.1e100.net (173.194.36.7): icmp_req=1 ttl=58 time=15.5 ms

**From 10.10.11.36: icmp_seq=2 Redirect Host(New nexthop: 10.10.11.33)**

64 bytes from bom04s01-in-f7.1e100.net (173.194.36.7): icmp_req=2 ttl=58 time=11.7 ms

Вопрос 2 Почему Гости не отправляют пакеты через свой шлюз, а не через шлюз хоста, т.е. 10.10.11.33.

удалил кеш arp из гостя и пингуется 8.8.8.8

после этого при проверке кеша arp mac адрес его шлюза не обновляется

arp -a

? (10.10.11.33) at 00:02:b6:42:7c:b5 [ether] on eth0
? (10.10.11.36) at <incomplete> on eth0

если пакеты проходят через 10.10.11.36, то почему его MAC-адрес не обновлялся.

даже tracerout подтвердил это

traceroute 8.8.8.8

traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets

1  10.10.11.33 (10.10.11.33)  0.286 ms  0.272 ms  0.264 ms

Вы не можете так настроить шлюзы. Если все машины находятся в одной сети (физическая и виртуальная сети соединены мостом), используйте 10.10.11.33 в качестве шлюза для виртуальных машин, если они находятся в разных сетях (например, с использованием NAT), тогда виртуальные машины и хост должны находиться в совершенно разных подсетях. .

Шлюз для выхода из сети!

Вы будете перенаправлены, потому что вы можете выйти из сети только один раз, и это через ваш 10.10.11.33. 10.10.11.36 (ваш хост) на самом деле является узлом в сети, а не шлюзом