重新連接後 IPv6 鏈路本地多播停止工作

重新連接後 IPv6 鏈路本地多播停止工作

我有兩個帶有相同 Wifi 模組的微控制器板。其中一塊板充當存取點 (AP),而另一塊板充當站 (STA),當 AP 在範圍內時嘗試與該 AP 連接。

我僅使用鏈路本地 IPv6 位址。奇怪的是,如果我 ping 鏈路本地多播位址 (ff02::1),它會在 STA 第一次連接到 AP 時起作用。斷開連接並重新連接到 AP 後,儘管可以 ping 到 AP 的 IPv6 鏈路本地地址 (fe80:xx),但我無法再 ping 到鏈路本地多播位址。

如果我重置 STA 端的接口,我可以再次 ping 到 STA。有什麼想法可以解決連結本地地址無法存取的問題嗎?整個過程必須自動化,也就是不需要使用者的互動。

這是一個範例會話:

STA首次連線AP

wpa_supplicant -c /etc/wpa_supplicant.conf -Dnl80211 -iwlan0

鏈路本地多播工作正常

ping6 -I wlan0 ff02::1

斷開連接並重新連接

Killall wpa_supplicant wpa_supplicant -c /etc/wpa_supplicant.conf -Dnl80211 -iwlan0

鏈路本地多播不起作用

ping6 -I wlan0 ff02::1 連線:網路無法存取

僅單播連結工作正常

ping6 -I wlan0 fe80:xx

開啟和關閉網路介面可以解決問題

ip 連結設定 wlan0 down && ip 連結設定 wlan0 up ping6 -I wlan0 ff02::1 #works

答案1

問題出在 systemd 網路設備檔案。只需刪除這些檔案並重新啟動即可解決問題。

相關內容