linux – ARP回复包含错误的MAC地址

我有一个运行带有线和无线适配器的 linux的机器人.当我启动时,它连接到无线罚款.当我为有线(静态或DHCP)分配IP时,它看起来像是有效的.如同,ifconfig显示正确的IP并且路由显示正确的路由.但是,当我执行有线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表. ARP请求192.168.0.110返回包含24:3C:20:06:3E:6D的ARP回复. ARP应答包的源MAC也是24:3C:20:06:3E:6D.我试图摆弄_filter,_ignore和_announce,如here所述,但无济于事.

编辑:设置网关(在任一接口上)没有区别(因为它不应该).

编辑:这在以前的操作系统版本(基于openembedded)上运行良好.他们有可能改变一些东西吗?

解决方法

当您在同一网络上有两个接口时,您看到的是正常行为.它在 this LWN article中描述.

相关文章

linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、...
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别...
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书...
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满...
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的...
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线...