成功实现Linux下pppd通过GPRS拨号上网
2010-03-18 14:53
585 查看
成功实现Linux下pppd通过GPRS拨号上网
昨天把开发板的bootloader删了,没办法,只得在PC上调GPRS拨号了.先在windows下拨号成功,然后用工具看拨号时具体使用了哪些AT命
令,再使用这些命令到linux下使用pppd来拨号,最后终于成功了,之前开发板上不能成功拨号极有可就是AT指令有问题,现在只有等开发板回来后再到
ARM7上调了.
下面贴一下拨号使用的几个脚本,GPRS模块是使用的华为的GTM900-B:
1, /etc/ppp/peers/gprs:
复制内容到剪贴板
代码:
#/etc/ppp/peers/gprs # This is pppd script for China Mobile, used Huawei GTM900-B GPRS Module # Usage: root>pppd call gprs /dev/ttyS0 19200 crtscts modem #noauth debug nodetach #hide-password usepeerdns noipdefault defaultroute user "cmnet" 0.0.0.0:0.0.0.0 #ipcp-accept-local #ipcp-accept-remote #lcp-echo-failure 12 #lcp-echo-interval 3 #noccp #novj #novjccomp #persist connect '/usr/sbin/chat -s -v -f /etc/ppp/gprs-connect-chat' #connect '/bin/chat -v -s -f /etc/ppp/gprs-connect-chat' #disconnect '/bin/chat -v -f /etc/ppp/gprs-disconnect-chat'
2, gprs-connect-chat:
复制内容到剪贴板
代码:
#/etc/ppp/gprs-connect-chat # chat script for China Mobile, used HuaWei GTM900-B GPRS module. TIMEOUT 15 ABORT "DELAYED" ABORT "BUSY" ABORT "ERROR" ABORT "NO DIALTONE" ABORT "NO CARRIER" TIMEOUT 40 '' /rAT OK ATS0=0 OK ATE0V1 OK AT+CGDCONT=1,"IP","CMNET" OK ATDT*99***1# CONNECT ''
3, 用于chap认证的密码文件:chap-secrets,由于移动的GPRS服务不需要用户名和密码,所以刚开始没设用户名和密码,结果在chap认证的时候总不能通过.后来在gprs里添加user "cmnet"和这个密码文件后就OK了.
复制内容到剪贴板
代码:
#/etc/ppp/chap-secrets #client server secret IP address "cmnet" * "cmnet" *
4, 另外还有个可选的,断开连接的脚本如下:
复制内容到剪贴板
代码:
ABORT OK ABORT BUSY ABORT DELAYED ABORT "NO ANSWER" ABORT "NO CARRIER" ABORT "NO DIALTONE" ABORT VOICE ABORT ERROR ABORT RINGING TIMEOUT 12 "" //k//k//k//d+++ATH "
使用: 将PC上的DNS删掉后运行如下:
[root@localhost ppp]# pppd call gprs
timeout set to 15 seconds
abort on (DELAYED)
abort on (BUSY)
abort on (ERROR)
abort on (NO DIALTONE)
abort on (NO CARRIER)
timeout set to 40 seconds
send (^MAT^M)
expect (OK)
^M^M
OK
-- got it
send (ATS0=0^M)
expect (OK)
^M
AT^M
OK
-- got it
send (ATE0V1^M)
expect (OK)
^M
ATS0=0^M^M
OK
-- got it
send (AT+CGDCONT=1,"IP","CMNET"^M)
expect (OK)
^M
ATE0V1^M^M
OK
-- got it
send (ATDT*99***1#^M)
expect (CONNECT)
^M
^M
OK^M
^M
CONNECT
-- got it
send (^M)
Serial connection established.
using channel 42
Using interface ppp0
Connect: ppp0 <--> /dev/ttyS0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x8c5e3d45> <pcomp> <accomp>]
rcvd [LCP ConfRej id=0x1 <magic 0x8c5e3d45>]
sent [LCP ConfReq id=0x2 <asyncmap 0x0> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x2 <asyncmap 0x0> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x1 <asyncmap 0x0> <auth chap MD5> <pcomp> <accomp>]
sent [LCP ConfAck id=0x1 <asyncmap 0x0> <auth chap MD5> <pcomp> <accomp>]
rcvd [CHAP Challenge id=0x1 <fb17db52a81bc14997f72e2932ab0b342bab961d49c611>, name = ""]
sent [CHAP Response id=0x1 <2c757eac52b8d9a7d80ca7a77c419ad9>, name = "cmnet"]
rcvd [CHAP Success id=0x1 ""]
CHAP authentication succeeded
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
rcvd [LCP ProtRej id=0x1 80 fd 01 01 00 0c 1a 04 78 00 18 04 78 00]
rcvd [IPCP ConfReq id=0x1 <addr 221.177.160.163>]
sent [IPCP ConfAck id=0x1 <addr 221.177.160.163>]
rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01>]
sent [IPCP ConfReq id=0x2 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
rcvd [IPCP ConfNak id=0x2 <addr 10.165.226.25> <ms-dns1 211.137.64.163> <ms-dns3 211.136.20.203>]
sent [IPCP ConfReq id=0x3 <addr 10.165.226.25> <ms-dns1 211.137.64.163> <ms-dns3 211.136.20.203>]
rcvd [IPCP ConfAck id=0x3 <addr 10.165.226.25> <ms-dns1 211.137.64.163> <ms-dns3 211.136.20.203>]
local IP address 10.165.226.25
remote IP address 221.177.160.163
primary DNS address 211.137.64.163
secondary DNS address 211.136.20.203
再将这里的DNS给PC或作个连接到/etc/ppp/resolf.conf应该就OK了.
有IP,网关,DNS之后就能上www.mcuos.com了....
相关文章推荐
- 成功实现Linux下pppd通过GPRS拨号上网
- linux环境下pppd gprs拨号上网总结
- arm中实现pppd连接GPRS上网的相关笔记,含GPRS自动拨号脚本(真正的实时监控,断线自动重拨)
- linux下用wvdial实现gprs拨号上网
- 嵌入式Linux上通过boa服务器实现cgi/html的web上网(转)
- 嵌入式Linux上通过boa服务器实现cgi/html的web上网(转)
- Linux下GPRS拨号功能的实现
- Linux下实现双网卡共享上网 ADSL拨号程序
- 原创翻译 通过拨号上网的Windows CE6.0 GPRS连接
- Linux下利用ppp-on脚本进行GPRS拨号上网
- Linux:宿主机通过桥接方式连接的VMware内部Linux14.04虚拟机(静态IP)实现上网方案
- 实现4G模块sim7100在Linux系统上的拨号上网
- 嵌入式Linux上通过boa服务器实现cgi/html的web上网(转)
- pppd(SUSE10.3) 拨号 gprs成功例子
- 原创翻译 通过拨号上网的Windows CE6.0 GPRS连接II
- linux下利用PPPOE实现拨号上网
- 【转】通过PPP实现GPRS的上网认证过程
- Linux下通过USB连接并利用手机拨号上网
- 原创翻译 通过拨号上网的Windows CE6.0 GPRS连接II
- 嵌入式Linux上通过boa服务器实现cgi/html的web上网