arp 收不到回复可能是什么原因? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
aqtata
V2EX    宽带症候群

arp 收不到回复可能是什么原因?

  •  
  •   aqtata 2024-02-29 11:58:05 +08:00 1911 次点击
    这是一个创建于 623 天前的主题,其中的信息可能已经有所发展或是发生改变。

    局域网,一台电脑控制嵌入设备。udp 通信,软件启动时会广播一下,设备回复,然后本地 ARP 缓存就更新了。

    以前仅支持单一网卡,所以 udp 绑定到特定的网卡,比如 192.168.10.100 ,广播地址是 255.255.255.255 ,这样一切正常。

    新程序要支持多网卡,所以 udp 绑定到 0.0.0.0 ,广播地址为特定网段的地址,比如 192.168.10.255 。

    问题来了,如果设备意外重启后,程序再发送任何数据都会失败,因为 arp 缓存已经没了。

    抓包发现系统会再次发送 arp 请求,但是收不到设备回复。可如果我用老程序的方式绑定在具体的网卡(192.168.10.100)上,并全局广播( 255.255.255.255 )就能收到 ARP 回复。

    是硬件存在问题还是什么原因?

    9 条回复    2024-03-01 11:45:54 +08:00
    pagxir
        1
    pagxir  
       2024-02-29 12:47:56 +08:00 via Android
    明显是网络配置有问题。广播报文是跟网卡的。
    wheat0r
        2
    wheat0r  
       2024-02-29 17:14:04 +08:00
    多网卡关程序什么事,你在操作系统上做 teaming 不好吗

    首先要理清几个问题:
    1 、你说的软件是安装在哪里的,你说的程序又是安装在哪里?
    2 、多网卡是安装在哪里
    3 、失效的 ARP 缓存是在哪里
    johnnyyeen
        3
    johnnyyeen  
       2024-02-29 17:18:54 +08:00
    想办法定期重新预热 arp 缓存?
    aqtata
        4
    aqtata  
    OP
       2024-02-29 17:27:50 +08:00
    @wheat0r windows 系统上的工具软件,arp 就是用 arp -a 查看的啊,设备 ip-mac 映射过期后就会发送失败。我用 win32 api SendARP 去发起请求,设备也不会回复。唯独用老程序中的方法去广播就回复了,很奇怪。。。
    aqtata
        5
    aqtata  
    OP
       2024-02-29 17:28:38 +08:00
    @johnnyyeen 暂时将设备 ip 、mac 添加为静态 arp 解决了
    beyondstars
        6
    beyondstars  
       2024-02-29 17:37:42 +08:00
    我感觉设备不回复 ARP 那问题就出在设备上,而不是出在控制设备的那个 Windows 电脑上。
    beyondstars
        7
    beyondstars  
       2024-02-29 17:44:26 +08:00
    我觉得回不回复 ARP 那确实不是应用程序(或者应用程序开发者)关心的问题,像 ARP 这种底层的协议一般都是操作系统实现的,应该是嵌入式设备网络配置错误的原因,跟程序 UDP 绑定哪个 socket 关系不大……
    wscgogo
        8
    wscgogo  
       2024-03-01 09:10:05 +08:00
    应该是嵌入式设备的问题,一般广播的 arp 请求发出后如果设备端拥有该 ip 就会答复报文,这里没有答复一可能是网络禁用了广播报文只允许静态 arp 二就是设备端问题了
    htfcuddles
        9
    htfcuddles  
       2024-03-01 11:45:54 +08:00
    应该是广播报文没从对应网卡发出去,两边抓包分析一下就知道了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3155 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 12:15 PVG 20:15 LAX 04:15 JFK 07:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86