数据包不通过 Linux 网关

数据包不通过 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: 当访客 ping google.com 时,为什么会显示重定向主机

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 缓存并 ping 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

答案1

您不能这样设置网关。如果所有机器都在同一个网络上(物理网络和虚拟网络是桥接的),则使用 10.10.11.33 作为虚拟机的网关,如果它们位于不同的网络上(例如使用 NAT),则虚拟机和主机应该位于完全不同的子网上。

网关是用来退出网络的!

你被重定向是因为你只能退出网络一次,那就是通过你的 10.10.11.33。10.10.11.36(你的主机)实际上是网络上的一个节点,而不是网关

相关内容