Networking
Linux OpenWRT IPv6 鄰居發現
我的
ip -6 nei
命令僅在 ping 通後才顯示可用的鄰居。有沒有辦法在鏈路啟動後填充 IPv6 鄰居表,而不僅僅是在發送流量之後?
不,發現鄰居需要流量。
IPv6 引入了類似於廣播 ping 的功能,它可以發現鄰居的 IPv6 地址。
$$ * $$ 如果您的主機允許,這可能很有用。我發現 Windows 沒有響應多播 ping 的報告,包括在 Windows 7 和 8.1 上。即使是這樣,Windows 防火牆也會阻止 ping,除非您將網路類型設置為“私人”(“家庭”/“工作”)。
發現連結本地地址:
ping -c1 ff02::1%br-lan
或者,編寫相同命令的不同方式:
ping -c1 -I br-lan ff02::1
發現全球地址:
ping -c1 -I <my-global-ipv6-address> ff02::1
對於不熟悉openwrt的讀者來說,
br-lan
是區域網路網路介面常用的名稱。感謝https://insights.sei.cmu.edu/cert/2008/09/ping-sweeping-in-ipv6.html
$$ * $$這些 IPv6 多播 ping 不能從離線發送。這意味著他們避免了 IPv4 廣播 ping 曾經存在的問題。在某一時刻,可以從網外發送 IPv4 廣播 ping。這大大放大了流量。因此,它可以被用作攻擊,通過欺騙攻擊者目標的 ping 源地址。在目前的 Linux 上,預設情況下會忽略 IPv4 廣播 ping。