ppp経由でSIM7000Eを設定しようとしています。 SIM7000EはマイクロUSBケーブルを介してビーグルボーンブラックに接続されています。 Beagleboneは5.10.168-ti-r71カーネル(Debian)を使用しています。 SIM7000Eドライバが正常にインストールされ、pppもインストールされました。
私は/etc/ppp/peersディレクトリに行き、ファイルプロバイダをコピーし、gprsという名前を付けました。 Gprsファイルは次のとおりです。
# example configuration for a dialup connection authenticated with PAP or CHAP
#
# This is the default configuration used by pon(1) and poff(1).
# See the manual page pppd(8) for information on all the options.
# MUST CHANGE: replace myusername@realm with the PPP login name given to
# your by your provider.
# There should be a matching entry with the password in /etc/ppp/pap-secrets
# and/or /etc/ppp/chap-secrets.
user "myusername@realm"
# MUST CHANGE: replace ******** with the phone number of your provider.
# The /etc/chatscripts/pap chat script may be modified to change the
# modem initialization string.
connect "/usr/sbin/chat -v -f /etc/chatscripts/gprs"
# Serial device to which the modem is connected.
/dev/ttyUSB2
# Speed of the serial line.
115200
nocrtscts
debug
nodetach
ipcp-accept-local
ipcp-accept-remote
# Assumes that your IP address is allocated dynamically by the ISP.
noipdefault
# Try to get the name server addresses from the ISP.
usepeerdns
# Use this connection as the default route.
defaultroute
# Makes pppd "dial again" when the connection is lost.
persist
# Do not ask the remote to authenticate.
noauth
次に、次のように入力してgprsを呼び出そうとすると、pppd call gprs
結果は次のようになります。
Script /usr/sbin/chat -v -f /etc/chatscripts/gprs finished (pid 1186), status = 0x0
Serial connection established.
using channel 2
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB2
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xf0cd2f0e> ]
rcvd [LCP ConfReq id=0x4 <asyncmap 0x0> <magic 0xd0a7832b> ]
sent [LCP ConfNak id=0x4 ]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xf0cd2f0e> ]
rcvd [LCP ConfReq id=0x5 <asyncmap 0x0> <magic 0xd0a7832b> ]
sent [LCP ConfAck id=0x5 <asyncmap 0x0> <magic 0xd0a7832b> ]
sent [LCP EchoReq id=0x0 magic=0xf0cd2f0e]
sent [PAP AuthReq id=0x1 user="myusername@realm" password=]
rcvd [LCP DiscReq id=0x6 magic=0xd0a7832b]
rcvd [LCP EchoRep id=0x0 magic=0xd0a7832b f0 cd 2f 0e]
rcvd [PAP AuthAck id=0x1 ""]
PAP authentication succeeded
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
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>]
sent [IPV6CP ConfReq id=0x1 ]
rcvd [LCP ProtRej id=0x7 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
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>]
sent [IPV6CP ConfReq id=0x1 ]
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>]
sent [IPV6CP ConfReq id=0x1 ]
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>]
sent [IPV6CP ConfReq id=0x1 ]
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>]
sent [IPV6CP ConfReq id=0x1 ]
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>]
sent [IPV6CP ConfReq id=0x1 ]
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>]
sent [IPV6CP ConfReq id=0x1 ]
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>]
sent [IPV6CP ConfReq id=0x1 ]
sent [LCP EchoReq id=0x1 magic=0xf0cd2f0e]
IPCP: timeout sending Config-Requests
IPV6CP: timeout sending Config-Requests
sent [LCP TermReq id=0x2 "No network protocols running"]
sent [LCP TermReq id=0x3 "No network protocols running"]
Connection terminated.
Modem hangup
何が問題なのかわかりません。誰でも助けることができますか?
/etc/chatscripts/gprs には以下が含まれます。
# You can use this script unmodified to connect to cellular networks.
# The APN is specified in the peers file as the argument of the -T command
# line option of chat(8).
# For details about the AT commands involved please consult the relevant
# standard: 3GPP TS 27.007 - AT command set for User Equipment (UE).
# (http://www.3gpp.org/ftp/Specs/html-info/27007.htm)
ABORT BUSY
ABORT VOICE
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "NO DIAL TONE"
ABORT "NO ANSWER"
ABORT "DELAYED"
ABORT "ERROR"
# cease if the modem is not attached to the network yet
ABORT "+CGATT: 0"
"" AT
TIMEOUT 12
OK ATH
OK ATE1
# +CPIN provides the SIM card PIN
#OK "AT+CPIN=1234"
# +CFUN may allow to configure the handset to limit operations to
# GPRS/EDGE/UMTS/etc to save power, but the arguments are not standard
# except for 1 which means "full functionality".
#OK AT+CFUN=1
OK AT+CGDCONT=1,"IP","\T","",0,0
OK ATD*99#
TIMEOUT 22
CONNECT ""
/etc/ppp/peersでgprsファイルを変更し、以下を追加しました。
connect "/usr/sbin/chat -v -f /etc/chatscripts/gprs" -T internet.vodafone.gr
私はgprsをもう一度呼び出してみましたが、結果はこんな感じです。
Script /usr/sbin/chat -v -f /etc/chatscripts/gprs -T internet.vodafone.gr finished (pid 3457), status = 0x0
Serial connection established.
using channel 27
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB2
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x7969ae32> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x0 <asyncmap 0x0> <auth chap MD5> <magic 0xd16a9755> <pcomp> <accomp>]
sent [LCP ConfNak id=0x0 <auth pap>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x7969ae32> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x1 <asyncmap 0x0> <auth pap> <magic 0xd16a9755> <pcomp> <accomp>]
sent [LCP ConfAck id=0x1 <asyncmap 0x0> <auth pap> <magic 0xd16a9755> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0x7969ae32]
sent [PAP AuthReq id=0x1 user="myusername@realm" password=<hidden>]
rcvd [LCP DiscReq id=0x2 magic=0xd16a9755]
rcvd [LCP EchoRep id=0x0 magic=0xd16a9755 79 69 ae 32]
rcvd [PAP AuthAck id=0x1 ""]
PAP authentication succeeded
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
rcvd [LCP ProtRej id=0x3 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::7183:7bdb:7541:1ed2>]
sent [LCP EchoReq id=0x1 magic=0x7969ae32]
IPCP: timeout sending Config-Requests
IPV6CP: timeout sending Config-Requests
sent [LCP TermReq id=0x2 "No network protocols running"]
sent [LCP TermReq id=0x3 "No network protocols running"]
Connection terminated.
Modem hangup
その後、/etc/chatscripts/gprsファイルを変更し、SIMカードのPINを入力し、#記号を削除しました。 gprsを再度呼び出すと、結果は次のようになります。
Script /usr/sbin/chat -v -f /etc/chatscripts/gprs -T internet.vodafone.gr finished (pid 3473), status = 0x0
Serial connection established.
using channel 28
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB2
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xc95e726d> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x4 <asyncmap 0x0> <auth chap MD5> <magic 0xd172abe9> <pcomp> <accomp>]
sent [LCP ConfNak id=0x4 <auth pap>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xc95e726d> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x5 <asyncmap 0x0> <auth pap> <magic 0xd172abe9> <pcomp> <accomp>]
sent [LCP ConfAck id=0x5 <asyncmap 0x0> <auth pap> <magic 0xd172abe9> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xc95e726d]
sent [PAP AuthReq id=0x1 user="myusername@realm" password=<hidden>]
rcvd [LCP DiscReq id=0x6 magic=0xd172abe9]
rcvd [LCP EchoRep id=0x0 magic=0xd172abe9 c9 5e 72 6d]
rcvd [PAP AuthAck id=0x1 ""]
PAP authentication succeeded
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
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>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::9012:64df:a80b:4d3f>]
rcvd [LCP ProtRej id=0x7 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
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>]
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>]
Modem hangup
Connection terminated.
つまり、「実行中のネットワークプロトコルがありません」というメッセージは表示されません。
答え1
pppd
DeflateとBSD圧縮の2つのバリエーションを指定して圧縮設定要求を送信します。
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
リモートエンドは圧縮要求を完全に拒否します。
rcvd [LCP ProtRej id=0x7 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
その後、リモートエンドは完全に応答しません。明らかに「圧縮」は見知らぬ概念なので、いったん言及されると、接続交渉を続けることはできません。
1行nodeflate
に1つずつキーワードを追加するか、両方を追加してみてください。nobsdcomp
/etc/ppp/peers/gprs
別の考えられる問題はIPv6かもしれません。モバイルネットワークプロバイダがIPv6の絶対的なサポートを証明しない限り、IPv6が要求されたときにトリガされるリモート側にいくつかのバグがある可能性があるという事実はあまり驚きません。 noipv6
.
または携帯通信会社が提供する場合IPv6のみ(個人的にはこれが起こったことを見たことはありませんが、IPv4アドレスの不足がより深刻な一部の国で発生する可能性があります。)以下を追加してみてくださいnoip
。 IPv6のみが利用可能な場合、リモートエンドは任意の接続で構成できます。 IPv4 要求の試行が完全に拒否されました。
両方を同時に追加しないでください。noipv6
それ以外の場合、noip
接続はほとんど役に立たなくなります。どちらかを追加するだけです。
ただし、SIM7000Eがネットワークにまったく登録されていない場合、これが問題の根本原因である可能性があります。
/etc/chatscript/gprs
コマンドで指定されたAPN名を取得するためにこのオプションを使用すると予想しましたが、現在これを提供していません。たとえば、使用する必要があるAPN名(ベンダーに連絡する)が次の場合は、次の行を変更します。chat
-T
internet
/etc/ppp/peers/gprs
connect "/usr/sbin/chat -v -f /etc/chatscripts/gprs"
これに関して:
connect "/usr/sbin/chat -v -f /etc/chatscripts/gprs -T internet"