Linux 系统如何在 WiFi 漫游后不清空 ARP 缓存?

2019-08-16 18:39:31 +08:00
 feng32
在最新的 Debian 系统下,当客户端 (运行 dhcpcd / wpa_supplicant) 从一个 AP 漫游到另一个 AP 后,和 wlan0 相关的 ARP 表项会被清空,客户端于是需要重新查询网关的 MAC 地址,这是不必要的

请问应该如何追踪这个过程,定位到是哪里的逻辑清空了 ARP 缓存呢?
1533 次点击
所在节点    程序员
5 条回复
omph
2019-08-16 19:32:18 +08:00
要不写个脚本,检测到漫游后就重新加载原先的 arp 表
[arpd linux 命令 在线中文手册]( http://linux.51yip.com/search/arpd)
zbinlin
2019-08-17 11:31:23 +08:00
feng32
2019-08-17 11:37:26 +08:00
@zbinlin noarp 的作用是不用 arp 去探测 dhcpcd 即将使用的 ip 地址,实测发现启用了静态地址和 noarp 之后,arp 表还是会被清空,但是探测自己地址是否被占用的过程的确是被跳过了
zbinlin
2019-08-17 12:55:08 +08:00
漫游过程中,wpa_supplicant 是否重启了?重启是会清空的。
feng32
2019-08-17 18:57:32 +08:00
@zbinlin 进程肯定没重启,但是内部代码倒是可以检查一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/592549

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX