我有一个运行带有有线和无线适配器的linux的机器人。当我启动时,它可以连接到无线网络。当我为有线(静态地或通过DHCP)分配IP时,它看起来可以工作。如图ifconfig
所示,显示正确的IP和route
正确的路由。但是,当我执行有线IP的ARP请求时,ARP回复包含无线MAC。
??? 机器人上没有运行的桥梁,所以为什么我没有有线MAC?
当电线断开连接时,有线IP会回复ping ...
为什么机器人通过无线接口对有线IP请求进行答复?
编辑:同一IP子网上的有线和无线适配器。我从同一IP子网上的计算机(尝试使用不同的计算机)发出ARP请求。
相关的ifconfig输出:
eth0 Link encap:Ethernet HWaddr 00:01:C0:04:BD:F7
inet addr:192.168.0.110 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
ra0 Link encap:Ethernet HWaddr 24:3C:20:06:3E:6D
inet addr:192.168.0.101 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:59 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:31023598 (29.5 MiB) TX bytes:85640627 (81.6 MiB)
相关路线输出:
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 ra0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
这是一个非常精简的Linux,所以我没有artptables,iptables,sysctl,brctl等工具。
编辑:按要求绘制图
编辑:我正在转储流量,并查看ARP表。192.168.0.110的ARP请求返回包含24:3C:20:06:3E:6D的ARP应答。ARP应答数据包的源MAC也是24:3C:20:06:3E:6D。我试着_filter,_ignore和_announce摆弄,提到这里,但无济于事。
编辑:设置网关(在任一接口上)没有区别(因为它不应该)。
编辑:这在OS的早期版本(基于openembedded)上运行良好。他们有可能改变了什么吗?