
我正在嘗試連接 Telit LEU910C1-EU 調製解調器以獲取數據連接(透過 LTE)。此模組透過 CM3 使用,調變解調器本身插入 USB 集線器。在修補時,我遇到了以下奇怪的行為:
- 在 Ubuntu 筆記型電腦上,我可以透過 ModemManager 和 NetworkManager 很好地使用數據機。 (具體步驟見下文)
- 在 Pi 上,我似乎沒有收到任何錯誤,並且 NetworkManager 告訴我已連接。當執行“雖然”時,
ping -I wwan0 8.8.8.8
它會無限期地阻塞。
我已經嘗試了許多不同的 SIM 卡(包括我智慧型手機中的 SIM 卡),甚至更換了數據機。一件奇怪的事情是,在啟動 ModemManager 後,整個 Pi 似乎有幾秒鐘沒有回應,有時乙太網路似乎不再運作。
我試著總結這個要點中的所有重要日誌:
https://gist.github.com/sahib/3a2d7951aec59ffd23f3d1eef60cc450
(這包括所有相關的軟體版本,它們與 Ubuntu 筆記型電腦上的相同,除了核心)。
這些是我用來設定調變解調器本身的步驟:
$ sudo systemctl start ModemManager
$ sudo systemctl start NetworkManager
# Check if the modem was recognized:
$ mmcli -L
# Check the status of the modem, if it shows "registered", continue.
$ mmcli -m 0
# Actually add the connection:
$ sudo nmcli c add type gsm ifname cdc-wdm0 con-name telit apn bicsapn
# Test the connction. This will block forever or yield "not reachable"
$ ping -I 8.8.8.8
有人遇到類似問題或可以幫助進一步調試嗎?
答案1
在較新的版本中,NetworkManager 將自動從 ModemManager 接手 MTU 大小:https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/499
答案2
解決了。
有兩件事需要檢查:
systemd-networkd
似乎幹擾了 NetworkManager。使用以下方法停用它:$ systemctl disable systemd-networkd
(重啟後)MTU 大小錯誤。對於 LTE,最大大小似乎約為 1430
mmcli -b $(number of your bearer from mmcli -m 0).
。通過 降低它ip link set dev wwan0 mtu 1400
。之後它應該會自動工作。