linux下TD-SCDMA上网pppd拨号脚本问题

maeom 2011-05-17 03:35:09
在Ubuntu10.04系统下。
使用pppd
td的脚本为

debug

logfile /var/log/pppd.log

lock

/dev/ttyUSB0

115200

user "card"

password "card"

crtscts

connect '/usr/sbin/chat -v -t3 -f td-connect-chat'

disconnect '/usr/sbin/chat -s -v -f td-disconnect-chat'

show-password

usepeerdns

noauth

noipdefault

novj

novjccomp

noccp

defaultroute

ipcp-accept-local

ipcp-accept-remote

td-connect-chat的脚本为

ABORT 'NO CARRIER'
ABORT 'ERROR'
ABORT 'NO DIALTONE'
ABORT 'BUSY'
ABORT 'NO ANSWER'
REPORT CONNECT
TIMEOUT 10
"" "ATZ"
OK "ATE0V1"
OK "ATS0=0"
OK 'AT+CGDCONT=1,"IP","$USE_APN"'
OK "AT+CFUN=1"
TIMEOUT 30
OK "ATD*98*1#"
CONNECT ' '

每一条AT指令,我都已经用minicom测试过了。都是OK的。可是在命令行执行命令:
pppd file td
在文件/var/log/pppd.log中会有如下log
1 Script /usr/sbin/chat -v -t3 -f td-connect-chat finished (pid 17870), status = 0x1
2 Connect script failed
并且也没有ppp0设备

望高手解惑,或解决方向。
...全文
2242 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
crazy_flyfre 2012-09-11
  • 打赏
  • 举报
回复
使用串口进行3G拨号,速率是否会偏低?
目前3G卡能够提供的速率能够达到14M以上,而串口的波特率一般设置在115200,这样算下来,即使一个波特承载8bit,也只能1M不到的速率。
earthnorth163 2012-06-09
  • 打赏
  • 举报
回复
route add defaut gw #ip(拨号后获取到的local IP address),就可以ping通外网了
dairtone 2012-03-09
  • 打赏
  • 举报
回复
你这样能ping通么,route是怎样的,需要手动删除default route 和再次添加么,
怎么返回的remote ip是remote IP address 192.168.0.1,这样是不是有点不对啊?
我现在和你的返回一样,但是这样是ping不通外网的
maeom 2011-05-18
  • 打赏
  • 举报
回复
在命令行执行命令会有如下log产生

root@syler1-desktop:/etc/ppp/peers# pppd connect 'chat -v "" "AT" "" "ATDT*99***1# CONNECT"' user any password any /dev/ttyUSB0 115200 nodetach crtscts show-password debug usepeerdns defaultroute
Script chat -v "" "AT" "" "ATDT*99***1# CONNECT" finished (pid 1875), status = 0x0
Serial connection established.
using channel 36
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xff706eae> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x36 <mru 1500> <asyncmap 0xffffffff> <auth pap> <magic 0x11223344> <pcomp> <accomp>]
sent [LCP ConfAck id=0x36 <mru 1500> <asyncmap 0xffffffff> <auth pap> <magic 0x11223344> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xff706eae> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xff706eae]
sent [PAP AuthReq id=0x1 user="any" password="any"]
rcvd [LCP EchoRep id=0x0 magic=0x11223344]
rcvd [PAP AuthAck id=0x1 "Welcome"]
Remote message: Welcome
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>]
rcvd [LCP ProtRej id=0x37 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 [LCP TermReq id=0x38]
LCP terminated by peer
sent [LCP TermAck id=0x38]
Connection terminated.
Modem hangup

这里显示认证已经通过。是pppd的选项不对?还是模块加载不正确呢.
看起来像是信令错误。对于
Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
用参数noccp可以忽略掉,但是无法收到LCP ProRej消息了
maeom 2011-05-18
  • 打赏
  • 举报
回复
可以上网了。使用命令:

/*注:这些是一行,为了清晰显示所以分开*/
pppd connect 'chat -v "" "AT" "" "ATH0" "" "AT+CFUN=1" "" "AT+CGDCONT=1,IP,CMNET" ""
"ATDT*99***1# CONNECT"' user any password any /dev/ttyUSB0 115200 nodetach crtscts
show-password debug defaultroute usepeerdns ipcp-accept-local ipcp-accept-remote
noccp

之前已知没有通过的原因是没有加如下行

"" "AT+CFUN=1"

本人使用的环境如下,方便其他人调试
OS:Linux Ubuntu 10.04
3G卡:大唐AirCard 901
分配IP成功上网的log如下

root@desktop:/etc/ppp/peers# pppd connect 'chat -v "" "AT" "" "ATH0" "" "AT+CFUN=1" "" "AT+CGDCONT=1,IP,CMNET" "" "ATDT*99***1# CONNECT"' user any password any /dev/ttyUSB0 115200 nodetach crtscts show-password debug defaultroute usepeerdns ipcp-accept-local ipcp-accept-remote noccp
Script chat -v "" "AT" "" "ATH0" "" "AT+CFUN=1" "" "AT+CGDCONT=1,IP,CMNET" "" "ATDT*99***1# CONNECT" finished (pid 5611), status = 0x0
Serial connection established.
using channel 71
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xd5725bcd> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0xe <mru 1500> <asyncmap 0xffffffff> <auth pap> <magic 0x11223344> <pcomp> <accomp>]
sent [LCP ConfAck id=0xe <mru 1500> <asyncmap 0xffffffff> <auth pap> <magic 0x11223344> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xd5725bcd> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xd5725bcd]
sent [PAP AuthReq id=0x1 user="any" password="any"]
rcvd [LCP EchoRep id=0x0 magic=0x11223344]
rcvd [PAP AuthAck id=0x1 "Welcome"]
Remote message: Welcome
PAP authentication succeeded
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 [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>]
rcvd [IPCP ConfReq id=0xf <addr 192.168.0.1>]
sent [IPCP ConfAck id=0xf <addr 192.168.0.1>]
rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01> <ms-dns2 0.0.0.0>]
sent [IPCP ConfReq id=0x2 <addr 0.0.0.0> <ms-dns1 0.0.0.0>]
rcvd [IPCP ConfNak id=0x2 <addr 10.141.31.178> <ms-dns1 221.130.33.60>]
sent [IPCP ConfReq id=0x3 <addr 10.141.31.178> <ms-dns1 221.130.33.60>]
rcvd [IPCP ConfAck id=0x3 <addr 10.141.31.178> <ms-dns1 221.130.33.60>]
Cannot determine ethernet address for proxy ARP
local IP address 10.141.31.178
remote IP address 192.168.0.1
primary DNS address 221.130.33.60
Script /etc/ppp/ip-up started (pid 5616)
Script /etc/ppp/ip-up finished (pid 5616), status = 0x0
maeom 2011-05-17
  • 打赏
  • 举报
回复
请教,如何手动touch一个pppd设备?
正常情况是,如果执行命令:pppd file td
就会产生ppp0网络设备。并且能够从运营商获得IP地址
freetstar 2011-05-17
  • 打赏
  • 举报
回复
手动touch一个pppd设备ok吗

4,465

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧