pppd: GSM USB-модем постоянно отключается через несколько часов - PullRequest
0 голосов
/ 16 июня 2020

Я пытаюсь создать крошечный (на базе A20) сервер, который должен автоматически подключаться к inte rnet (GSM) и постоянно оставаться подключенным. Моя установка:

оборудование:

Board: Olimex A20 OlinuXino-Lime2
GSM modem: USB HSDPA (https://www.olimex.com/Products/USB-Modules/MOD-USB3G/)

программное обеспечение:

debian 10
pppd
pppconfig (pon/poff)
usbmodeswitch

После загрузки модем обнаруживается и режимы правильно переключаются на модем (шина 004, устройство 004: ID 12d1: 1001 Huawei Technologies Co., Ltd. E161 / E169 / E620 / E800 HSDPA Modem) и / dev / ttyUSB0-2.

Я настроил модуль systemd, который запускает pppd после того, как ttyUSB0 становится доступным и правильно подключается к провайдеру GSM:

Jun 14 23:22:13 A20-OLinuXino-HA-001 systemd[1]: Starting pppd daemon on /dev/ttyUSB0...
Jun 14 23:22:13 A20-OLinuXino-HA-001 systemd[1]: Started pppd daemon on /dev/ttyUSB0.
Jun 14 23:22:13 A20-OLinuXino-HA-001 pppd[870]: pppd 2.4.7 started by root, uid 0
Jun 14 23:22:26 A20-OLinuXino-HA-001 pppd[870]: Script /usr/sbin/chat -v -f /etc/chatscripts/keepgo finished (pid 871), status = 0x5
Jun 14 23:22:26 A20-OLinuXino-HA-001 pppd[870]: Connect script failed
Jun 14 23:22:59 A20-OLinuXino-HA-001 pppd[870]: Script /usr/sbin/chat -v -f /etc/chatscripts/keepgo finished (pid 971), status = 0x5
Jun 14 23:22:59 A20-OLinuXino-HA-001 pppd[870]: Connect script failed
Jun 14 23:23:33 A20-OLinuXino-HA-001 pppd[870]: Script /usr/sbin/chat -v -f /etc/chatscripts/keepgo finished (pid 992), status = 0x0
Jun 14 23:23:33 A20-OLinuXino-HA-001 pppd[870]: Serial connection established.
Jun 14 23:23:33 A20-OLinuXino-HA-001 pppd[870]: using channel 1
Jun 14 23:23:33 A20-OLinuXino-HA-001 pppd[870]: Using interface ppp0
Jun 14 23:23:33 A20-OLinuXino-HA-001 pppd[870]: Connect: ppp0 <--> /dev/ttyUSB0
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xc63c6af6> <pcomp> <accomp>]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: rcvd [LCP ConfReq id=0x0 <asyncmap 0x0> <auth chap MD5> <magic 0x24d918f4> <pcomp> <accomp>]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: sent [LCP ConfAck id=0x0 <asyncmap 0x0> <auth chap MD5> <magic 0x24d918f4> <pcomp> <accomp>]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xc63c6af6> <pcomp> <accomp>]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: sent [LCP EchoReq id=0x0 magic=0xc63c6af6]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: rcvd [LCP DiscReq id=0x1 magic=0x24d918f4]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: rcvd [CHAP Challenge id=0x1 <00000000000000000000000000000000>, name = "UMTS_CHAP_SRVR"]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: sent [CHAP Response id=0x1 <7dacccc151c57331186e8771b0dccfb4>, name = "ppp"]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: rcvd [CHAP Success id=0x1 ""]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: CHAP authentication succeeded
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: CHAP authentication succeeded
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: rcvd [LCP ProtRej id=0x2 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
Jun 14 23:23:34 A20-OLinuXino-HA-001 pppd[870]: Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
Jun 14 23:23:35 A20-OLinuXino-HA-001 pppd[870]: rcvd [IPCP ConfNak id=0x1 <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
Jun 14 23:23:35 A20-OLinuXino-HA-001 pppd[870]: sent [IPCP ConfReq id=0x2 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
Jun 14 23:23:36 A20-OLinuXino-HA-001 pppd[870]: rcvd [IPCP ConfNak id=0x2 <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
Jun 14 23:23:36 A20-OLinuXino-HA-001 pppd[870]: sent [IPCP ConfReq id=0x3 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
Jun 14 23:23:36 A20-OLinuXino-HA-001 pppd[870]: rcvd [IPCP ConfReq id=0x0]
Jun 14 23:23:36 A20-OLinuXino-HA-001 pppd[870]: sent [IPCP ConfNak id=0x0 <addr 0.0.0.0>]
Jun 14 23:23:36 A20-OLinuXino-HA-001 pppd[870]: rcvd [IPCP ConfRej id=0x3 <compress VJ 0f 01> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
Jun 14 23:23:36 A20-OLinuXino-HA-001 pppd[870]: sent [IPCP ConfReq id=0x4 <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14>]
Jun 14 23:23:36 A20-OLinuXino-HA-001 pppd[870]: rcvd [IPCP ConfNak id=0x4 <addr 10.136.211.206> <ms-dns1 80.58.61.250> <ms-dns2 80.58.61.254>]
Jun 14 23:23:36 A20-OLinuXino-HA-001 pppd[870]: sent [IPCP ConfReq id=0x5 <addr 10.136.211.206> <ms-dns1 80.58.61.250> <ms-dns2 80.58.61.254>]
Jun 14 23:23:36 A20-OLinuXino-HA-001 pppd[870]: rcvd [IPCP ConfAck id=0x5 <addr 10.136.211.206> <ms-dns1 80.58.61.250> <ms-dns2 80.58.61.254>]
Jun 14 23:23:37 A20-OLinuXino-HA-001 pppd[870]: rcvd [IPCP ConfReq id=0x1]
Jun 14 23:23:37 A20-OLinuXino-HA-001 pppd[870]: sent [IPCP ConfAck id=0x1]
Jun 14 23:23:37 A20-OLinuXino-HA-001 pppd[870]: Could not determine remote IP address: defaulting to 10.64.64.64
Jun 14 23:23:38 A20-OLinuXino-HA-001 pppd[870]: local  IP address 10.136.211.206
Jun 14 23:23:38 A20-OLinuXino-HA-001 pppd[870]: remote IP address 10.64.64.64
Jun 14 23:23:38 A20-OLinuXino-HA-001 pppd[870]: primary   DNS address 80.58.61.250
Jun 14 23:23:38 A20-OLinuXino-HA-001 pppd[870]: secondary DNS address 80.58.61.254
Jun 14 23:23:38 A20-OLinuXino-HA-001 pppd[870]: Script /etc/ppp/ip-up started (pid 1004)
Jun 14 23:23:38 A20-OLinuXino-HA-001 pppd[870]: Script /etc/ppp/ip-up finished (pid 1004), status = 0x0
Jun 14 23:24:04 A20-OLinuXino-HA-001 pppd[870]: sent [LCP EchoReq id=0x1 magic=0xc63c6af6]
Jun 14 23:24:04 A20-OLinuXino-HA-001 pppd[870]: rcvd [LCP EchoRep id=0x1 magic=0x24d918f4 c6 3c 6a f6]
Jun 14 23:24:34 A20-OLinuXino-HA-001 pppd[870]: sent [LCP EchoReq id=0x2 magic=0xc63c6af6]
...

Соединение обеспечивает доступ к inte rnet и остается стабильно примерно через 6-7 часов. Затем внезапно соединение теряется со следующими записями журнала:

...    
Jun 15 06:10:21 A20-OLinuXino-HA-001 pppd[870]: sent [LCP EchoReq id=0x2d magic=0xc63c6af6]
Jun 15 06:10:21 A20-OLinuXino-HA-001 pppd[870]: rcvd [LCP EchoRep id=0x2d magic=0x24d918f4 c6 3c 6a f6]
Jun 15 06:10:51 A20-OLinuXino-HA-001 pppd[870]: sent [LCP EchoReq id=0x2e magic=0xc63c6af6]
Jun 15 06:10:51 A20-OLinuXino-HA-001 pppd[870]: rcvd [LCP EchoRep id=0x2e magic=0x24d918f4 c6 3c 6a f6]
Jun 15 06:11:21 A20-OLinuXino-HA-001 pppd[870]: sent [LCP EchoReq id=0x2f magic=0xc63c6af6]
Jun 15 06:11:51 A20-OLinuXino-HA-001 pppd[870]: sent [LCP EchoReq id=0x30 magic=0xc63c6af6]
Jun 15 06:12:21 A20-OLinuXino-HA-001 pppd[870]: sent [LCP EchoReq id=0x31 magic=0xc63c6af6]
Jun 15 06:12:52 A20-OLinuXino-HA-001 pppd[870]: sent [LCP EchoReq id=0x32 magic=0xc63c6af6]
Jun 15 06:13:22 A20-OLinuXino-HA-001 pppd[870]: No response to 4 echo-requests
Jun 15 06:13:22 A20-OLinuXino-HA-001 pppd[870]: Serial link appears to be disconnected.
Jun 15 06:13:22 A20-OLinuXino-HA-001 pppd[870]: Connect time 409.8 minutes.
Jun 15 06:13:22 A20-OLinuXino-HA-001 pppd[870]: Sent 1067449 bytes, received 7513038 bytes.
Jun 15 06:13:22 A20-OLinuXino-HA-001 pppd[870]: Script /etc/ppp/ip-down started (pid 1938)
Jun 15 06:13:22 A20-OLinuXino-HA-001 pppd[870]: sent [LCP TermReq id=0x2 "Peer not responding"]
Jun 15 06:13:22 A20-OLinuXino-HA-001 pppd[870]: Script /etc/ppp/ip-down finished (pid 1938), status = 0x0
Jun 15 06:13:25 A20-OLinuXino-HA-001 pppd[870]: sent [LCP TermReq id=0x3 "Peer not responding"]
Jun 15 06:13:28 A20-OLinuXino-HA-001 pppd[870]: Connection terminated.

После остановки соединения нет другого способа запустить его снова, кроме перезагрузки системы. Я пробовал poff, killall -9 pppd перед попыткой перезапустить соединение (pon). Попытки перезапуска завершаются неудачно с сообщением: Устройство ttyUSB0 заблокировано pid xxxx (который выглядит как pppd)

Мой / etc / ppp / peers / provider (сгенерированный pppconfig):

hide-password 
noauth
connect "/usr/sbin/chat -v -f /etc/chatscripts/MyProvider"
debug
/dev/ttyUSB0
460800
defaultroute
noipdefault 
user "ppp"
remotename xxxx
ipparam xxxx

persist
usepeerdns

Я заблудился, кое-что перепробовал (даже полную перестройку сервера) безрезультатно. Я был бы очень признателен за любую помощь в решении этой проблемы.

...