Armadilloフォーラム

LTE/3G両対応SIMのLTE接続固定化設定がModemManager起動後に解除される

kozuchi

2019年3月18日 12時41分

お世話になっております。
小槌と申します。

LTE/3G両対応SIMでのインターネット接続をLTEに固定化する方法についてご教授いただきたく、よろしくお願いいたします。
本件、以下の投稿の続きで質問しておりましたが、クローズ扱いとなっているのか返信がないため、新規に投稿いたします。

LTE/3G両対応SIMのLTE接続固定化設定が再起動後に保持されない(https://users.atmark-techno.com/forum/armadillo/3778

上記投稿を参考に、Armadillo-IoT G3(型番:AGX3142-U03Z)にてLTEの固定化を試みております。
回答コメントの指摘に従い、モジュールの再起動を実施したところ、確かにモジュール再起動後もLTE固定化が出来ているのは確認できましたが、
その後にModemManagerを起動するとLTE固定化が解除されてしまいます。

同様の手順により3G固定化については実施できることを確認しており、LTE固定化ができない状況です。
ModemManager起動後にLTE固定化設定を保持することはできないのでしょうか?

対処方法をご存知でしたらご教授いただきたく、よろしくお願いいたします。

以下に、こちらの行った手順を示します。

-------------------------------------------
# service connection-recover stop
# service ModemManager stop
# cu -l /dev/ttyUSB2 -s 115200
Connected.

AT+QCFG="nwscanmode",3,1
OK

AT+CFUN=1,1
※ USBデバイスがdisconnect され、cuが終了
# cu -l /dev/ttyUSB2 -s 115200
Connected.

AT+QCFG="nwscanmode"?
+QCFG: "nwscanmode",3 ← LTE固定化を確認
※ここまではhttps://users.atmark-techno.com/comment/6715#comment-6715の手順通り
~.
# service ModemManager start
※mmcli -m 0 を確認しながら接続が完了するまで待つ
# service ModemManager stop
# cu -l /dev/ttyUSB2 -s 115200
Connected.

AT+QCFG="nwscanmode"?
+QCFG: "nwscanmode",0 ← Autoに戻っている
-------------------------------------------

コメント

at_keitaro.takahashi

2019年3月18日 15時33分

高橋です。

こちらでも同様の症状を再現いたしました。
現在、原因をモジュールメーカーに確認中です。

また、暫定的な対策ですが、NetworkManagerの接続開始時にLTE固定を都度設定しなおすスクリプトを添付いたします。
(接続開始時に動作するスクリプトのため、接続を行っていないときはLTE固定が設定されません。)
このスクリプトで、状況が改善されるかご確認ください。

・使用方法
スクリプトに実行権限を付与し、/etc/NetworkManager/dispatcher.d/ 以下に配置してください。

ファイル ファイルの説明
lte_fixed.sh

高橋様

ご回答いただき、ありがとうございます。

提供いただいたスクリプトを指定されたディレクトリに格納して再起動したところ、
syslogにて以下のようなエラーが出力され、ppp接続ができなくなりました。

これは想定される動作でしょうか?
エラー原因についてご教授いただきたく、よろしくお願いいたします。

以下にsyslogの出力内容を記載します

---------------------------
pppd[1926]: nm-ppp-plugin: (nm_phasechange): status 5 / phase 'establish'
pppd[1926]: Modem hangup
NetworkManager[1003]: Modem hangup
NetworkManager[1003]: Connection terminated.
pppd[1926]: nm-ppp-plugin: (nm_phasechange): status 11 / phase 'disconnect'
pppd[1926]: Connection terminated.
NetworkManager[1003]: [1478487206.8869] devices removed (path: /sys/devices/virtual/net/ppp0, iface: ppp0)
pppd[1926]: nm-ppp-plugin: (nm_phasechange): status 1 / phase 'dead'
pppd[1926]: nm-ppp-plugin: (nm_exit_notify): cleaning up
pppd[1926]: Exit.
NetworkManager[1003]: [1478487206.9063] ppp-manager: pppd pid 1926 exited with error: A modem hung up the phone
---------------------------

at_keitaro.takahashi

2019年3月19日 9時18分

高橋です。

恐らく、スクリプトが正常に実行できていないためだと思われます。

以下のコマンドを実行し、もう一度試していただけますか。

systemctl enable NetworkManager-dispatcher.service
chmod +x /etc/NetworkManager/dispatcher.d/lte_fixed.sh
reboot

上記のコマンドを実行しても状況が改善しない場合、以下のコマンドの実行結果を教えてください。

systemctl status NetworkManager-dispatcher.service

よろしくお願い致します。

高橋様

お世話になっております。
小槌です。

ご教授頂いた手順で試してみたが、前回と同じくppp接続が出来ませんでした。
以下、確認コマンドの実行結果も含めて操作手順を記載いたします。
また、ご参考までに、syslogの接続処理部分を切り出したものも添付しております。

ご確認いただけますと幸いです。

以下、操作ログ
-----------
root@armadillo:~# systemctl enable NetworkManager-dispatcher.service
root@armadillo:~# systemctl status NetworkManager-dispatcher.service ● NetworkManager-dispatcher.service - Network Manager Script Dispatcher Service
Loaded: loaded (/lib/systemd/system/NetworkManager-dispatcher.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2016-11-04 02:25:48 JST; 9s ago Main PID: 2219 (nm-dispatcher)
CGroup: /system.slice/NetworkManager-dispatcher.service
└─2219 /usr/lib/NetworkManager/nm-dispatcher

Nov 04 02:25:48 armadillo systemd[1]: Starting Network Manager Script Dispatcher Service...
Nov 04 02:25:48 armadillo nm-dispatcher[2219]: req:1 'connectivity-change': new request (4 scripts) Nov 04 02:25:48 armadillo nm-dispatcher[2219]: req:1 'connectivity-change': start running ordered scripts...
Nov 04 02:25:48 armadillo systemd[1]: Started Network Manager Script Dispatcher Service.
Nov 04 02:25:49 armadillo nm-dispatcher[2219]: req:2 'connectivity-change': new request (4 scripts) Nov 04 02:25:49 armadillo nm-dispatcher[2219]: req:2 'connectivity-change': start running ordered scripts...
root@armadillo:~# chmod +x /etc/NetworkManager/dispatcher.d/lte_fixed.sh
root@armadillo:~# ls -l /etc/NetworkManager/dispatcher.d/lte_fixed.sh
-rwxr-xr-x 1 root root 226 Mar 18 2019 /etc/NetworkManager/dispatcher.d/lte_fixed.sh
root@armadillo:~# reboot

# 再起動

root@armadillo:~# systemctl status NetworkManager-dispatcher.service ● NetworkManager-dispatcher.service - Network Manager Script Dispatcher Service
Loaded: loaded (/lib/systemd/system/NetworkManager-dispatcher.service; enabled; vendor preset: enabled)
Active: inactive (dead)

Nov 04 02:28:14 armadillo nm-dispatcher[1923]: req:4 'connectivity-change': new request (4 scripts) Nov 04 02:28:14 armadillo nm-dispatcher[1923]: req:4 'connectivity-change': start running ordered scripts...
Nov 04 02:28:18 armadillo nm-dispatcher[1923]: req:5 'connectivity-change': new request (4 scripts) Nov 04 02:28:18 armadillo nm-dispatcher[1923]: req:5 'connectivity-change': start running ordered scripts...
Nov 04 02:29:28 armadillo systemd[1]: Starting Network Manager Script Dispatcher Service...
Nov 04 02:29:28 armadillo systemd[1]: Started Network Manager Script Dispatcher Service.
Nov 04 02:29:28 armadillo nm-dispatcher[2058]: req:1 'connectivity-change': new request (4 scripts) Nov 04 02:29:28 armadillo nm-dispatcher[2058]: req:1 'connectivity-change': start running ordered scripts...
Nov 04 02:29:29 armadillo nm-dispatcher[2058]: req:2 'connectivity-change': new request (4 scripts) Nov 04 02:29:29 armadillo nm-dispatcher[2058]: req:2 'connectivity-change': start running ordered scripts...

# 念のため手動でstartしてみましたが、しばらくするとinactive(dead)状態になってしまいます。
-----------

ファイル ファイルの説明
syslog.txt

高橋様

お世話になっております。
小槌です。

指定の方法により取得したログを添付にてお送りいたします。

・「lte_fixed.sh」あり(PPP接続失敗)、無し(PPP接続成功)の両パターンで取得したログを添付しております。
・ログを見やすくするためにネットワークの自動接続は行わずにシステム起動後に手動でnmcliコマンドからネットワーク接続を行っています。

ご確認いただけますと幸いです。

ファイル ファイルの説明
syslog.normal.log lte_fixed無し
syslog.w_lte_fixed.log lte_fixedあり

at_keitaro.takahashi

2019年3月28日 18時30分

小槌様

高橋です。
こちらでも検証してみたのですが、
dispatcherでスクリプトを実行せず、SIMが接続されているときに
手動で

send-at /dev/ttymxc6 'AT+QCFG="nwscanmode",3,1'

のコマンドを実行しnwscanmodeを変更すると、接続ができなくなることを確認しました。

この方法では、LTE固定の設定が行えないようです。
申し訳ありません。

接続方法を固定化できない問題については、現在モジュールメーカーに確認中です。