ppdデバッグの心得.md
2730 ワード
説明 ppdは、3 gモジュールを駆動するための形態であり、その本質は、オペレータAPNと協議し、接続を確立する である.は、オペレータとの間でpppプロトコルを使用し、ユーザがアプリケーション層でシステムから提供されるsocketを使用すればよく、ハードウェアの違いによるアプリケーションの違いを避けるために、どのインターフェースのデバイスを使用しているかを無視することができる.
ppdのコマンドは一般的に
ppd call[option]
pppdプログラムに入ると、フロントを占有する可能性があります.CTRL-Cを使用して、同時にpppdを終了したり、コマンドの後に'&'を追加して、他のスレッドで動作させたり、コンソールが占有されないようにします.
プロセス
二つの過程に分類します. chat pppネゴシエーション chatは、AT命令を使用して、モジュールをAPNの制定に接続し、PPPモード に進む.
私は自分のchatスクリプトを共有します.
quectel-chat-connect
その中: AT+COPS?キャリア を取得することができます. AT+CGREGモジュールがネットワークに接続されているかどうかを確認してもいいです.応答+CGREG:0,1はインターネットに登録されていることを表しています. AT+CGDCONTは、APNを設定するコマンドであり、異なるキャリアのAPNが異なるため、誤ったオペレータを使用すると、カードがロックされる可能性があります. ATDT命令はダイヤルアップ命令*99菗は番号で、私が実験した時に移動/聯通はこの番号でインターネットを利用できます.
ppp協議
ppp協議時にAPNサーバと協議し、通信時に使用するパラメータを決定し、自機IPを取得する.
quectel-ppp prsistは重連パラメータであり、maxfailは最大重連回数 を設定する.-detach設定pppはバックグラウンドで動作し、SIG信号を印刷したり受信したりしません.nodetachを使用するとフロントで動作し、SIG信号 を承諾して受信します.
収穫私のワークフローは毎回ppdダイヤルする前に4 GモジュールのRESET再起動モジュールを引っ張って、1 s過ぎたらまた高くなります. は更に15 sを過ぎて、ダイヤルを始めて、モジュールが再起動した後に、システムはUSBの再列挙を行う必要があります.これは時間がかかります. はppd call quectel-pppを実行してppp接続を行って、この時カードのネットを過ぎるのが遅いならば、初めてネットを打つことができるかもしれません. 、APNはLTEを通じています.APN=CMNETは、shellスクリプト内部変数として、pppdプログラムの に伝えられます.
ppdのコマンドは一般的に
ppd call[option]
pppdプログラムに入ると、フロントを占有する可能性があります.CTRL-Cを使用して、同時にpppdを終了したり、コマンドの後に'&'を追加して、他のスレッドで動作させたり、コンソールが占有されないようにします.
プロセス
二つの過程に分類します.
私は自分のchatスクリプトを共有します.
quectel-chat-connect
#!/bin/sh
exec /opt/usr/bin/chat -s -v \
ABORT "BUSY" \
ABORT "NO CARRIER" \
ABORT "NO DIALTONE" \
ABORT "NO ANSWER" \
TIMEOUT 5 \
"" AT \
'OK-+++\c-OK' ATE0 \
OK ATI \
OK AT+CSQ \
OK AT+CPIN? \
OK AT+COPS? \
OK AT+CGREG? \
0,1 AT+CGDCONT=1,"IP","$LTE_APN",,0,0 \
OK ATDT*99# \
CONNECT
quectel-chat-disconnectABORT "ERROR"
ABORT "NO DIALTONE"
SAY "\NSending break to the modem
"
"" +++ATH
SAY "
Good bye
"
IPの取得に成功したら、デバイスはpppインターフェースを通じてインターネットを利用することができます.その中:
ppp協議
ppp協議時にAPNサーバと協議し、通信時に使用するパラメータを決定し、自機IPを取得する.
quectel-ppp
hide-password
noauth
connect /etc/ppp/peers/quectel-chat-connect
disconnect '/opt/usr/bin/chat -E -s -v -f /etc/ppp/peers/quectel-chat-disconnect'
debug
/dev/ttyUSB2
19200
# If you want to use the HSDPA link as your gateway
defaultroute
# pppd must not propose any IP address to the peer
noipdefault
# No ppp compression
novj
novjccomp
noccp
ipcp-accept-local
ipcp-accept-remote
local
# For sanity, keep a lock on the serial line
lock
dump
logfile /var/log/pppd_log
-detach
# retry when failed
persist
maxfail 10
user "test" password "test"
crtscts
remotename 3gppp
ipparam 3gppp
# Ask the peer for up to 2 DNS server addresses
usepeerdns
その中:収穫