我有两个网络:A 和 B(172.16.2.0/24 和 172.17.2.0/24)。 A是以太网,B是WiFi。 OpenWRT 路由器连接 A 和 B,大多数流量都可以顺利通过。路由器上的默认路由通向以太网上的电缆调制解调器,并且到互联网的流量工作正常。
我有两台带有以太网和 WiFi 接口的多宿主 Linux 机器。 ip_forward 设置为 1,但计算机通常不执行路由(它们没有被列为任何人的默认网关)。
仅 WiFi 计算机可以 ping 任何 WiFi 地址,并且可以 ping 任何仅以太网计算机的地址,但无法 ping 任意多宿主计算机的以太网地址。 (他们可以 ping 通路由器的以太网地址。)
使用 tcpdump 观察时对多宿主主机的以太网地址执行 Ping 操作会显示 ICMP 请求数据包从 WiFi 到达多宿主以太网地址,但没有发送回复。
多宿主主机可以 ping 任何其他主机,但默认情况下,这些 ping 会在连接到目标网络的接口上发出。
使用“-I [以太网地址]”选项从多宿主主机进行 ping 操作会导致 ping 数据包发送到 WiFi 主机,并且返回正确寻址的回复,但 ping 进程从未收到它们 - 它表示“请求”暂停。”
多宿主主机是 Ubuntu 和 Debian;没有使用 iptables 规则,默认策略全部接受。
知道什么会吞噬从 [WiFi-addr] 到 [Multi-home-Ethernet-Addr] 的数据包吗?
[根据评论者的请求添加信息:]
root@vegas:~# ip a 1: lo: mtu 16436 qdisc noqueue 状态未知 链接/环回 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 范围主机 lo inet6 ::1/128 范围主机 永远有效_lft 永远首选_lft 2: eth0: mtu 1500 qdisc pfifo_fast 状态 UP qlen 1000 链接/以太 d0:27:88:d5:72:7b brd ff:ff:ff:ff:ff:ff inet 172.16.2.250/24 brd 172.16.2.255 范围全局 eth0 inet6 fe80::d227:88ff:fed5:727b/64 范围链接 永远有效_lft 永远首选_lft 3:wlan0:mtu 1500 qdisc mq 状态UP qlen 1000 链接/以太 9c:4e:36:01:64:2c brd ff:ff:ff:ff:ff:ff inet 172.17.2.250/24 brd 172.17.2.255 范围全局 wlan0 inet6 fe80::9e4e:36ff:fe01:642c/64 范围链接 永远有效_lft 永远首选_lft 4:tun0:mtu 1500 qdisc pfifo_fast 状态未知 qlen 100 链接/无 inet 172.19.0.1 对等点 172.19.0.2/32 范围全局 tun0 root@vegas:~# ip ro sh 默认通过 172.16.2.254 dev eth0 172.16.2.0/24 dev eth0 原型内核范围链接 src 172.16.2.250 172.17.2.0/24 dev wlan0 原型内核范围链接 src 172.17.2.250 172.19.0.0/24 通过 172.19.0.2 dev tun0 172.19.0.2 dev tun0 原型内核范围链接 src 172.19.0.1 root@vegas:~# ip ru sh 0:从所有本地查找 32766:从所有查找主要 32767:从所有查找默认值