不同平台设备间ping问题

问题:A平台与B平台两台linux设备,一个stm32设备C,配置stm32的MAC地址为Mac(省略10个F)85,IP为192.168.1.181。A平台设备IP为192.168.1.64,与stm32设备通过网线连接,A可以ping通C设备。再将stm32设备断开与A的连接,通过网线与B设备连接,B设备IP为192.168.1.64,B无法ping通C设备。此时将C设备的MAC改成FE(省略8个F)85,B设备就可以Ping通C设备了。
初步定位Mac(省略10个F)85地址非法,所以B无法ping通C,但是无法解释A为什么可以ping通C。
A——>C的arp报文可以转到,B——>C的arp报文只有请求,无响应。
请各位分析下是什么原因造成的该问题。(提问不能连续打多个F,见谅)

可能是stn32的tcp/ip协议栈有问题,你用电脑代替stm32重复这个实验就没这个问题。
stm32断开主机a后将stm32断电重新启动后与电脑b连接就应该没问题。
可能的原因是stm32 arp 协议记录了电脑a的mac和对应的ip 64。换成电脑b后,ip没变,stm32没有更新ip 64的mac地址,通讯失败。

10个F肯定是非法MAC地址,其实FE仍然不是合法MAC地址。第一个字节的bit0和bit1都不应该是1。但是并不是每个设备都严格检验了这个合法性,所以会有这些差异。