没有合适的资源?快使用搜索试试~ 我知道了~
首页linux下PPP拨号流程详解
linux下PPP拨号流程详解
需积分: 48 25 下载量 72 浏览量
更新于2023-03-16
评论 1
收藏 735KB PDF 举报
PPP拨号流程中各个文件的代码解释,对移植PPP拨号到自己的终端非常长有用
资源详情
资源评论
资源推荐
Linux 下 ppp 拨号
版本
版本
时间
内容
1.0
2011-07-18
添加 WCDMA 拨号
1.1
2011-07-28
添加 CDMA2000 拨号
1.2
2011-07-29
添加 TD-SCDMA 拨号
添加附录、常见问题以及常用 AT 命令
拨号流程
本节以 WCDMA 为例,详细描述了 Linux 环境下中国联通 WCDMA 的 ppp 拨号上网流程。对
中国电信 CDMA2000 和中国移动 TD-SCDMA 也给出了参考。
Linux 下用 ppp 上网需要两个程序:pppd 和 chat 。这两个程序有开源代码,可以下载后编
译得到。我们的系统中已经有了,不再赘述。ubuntu 也自带 pppd 和 chat,可以使用 man
查看其具体使用方法。
典型的 ppp 拨号需要准备几个文件
1. pppd 脚本
2. chat 脚本
3. chap-secets 文件
4. pap-secets 文件
WCDMA
本节使用的是 huawei em770w 模块,使用中国联通 WCDMA。
pppd 脚本
pppd 脚本默认放在/etc/ppp/peers/ 目录下,比如我们使用 wcdma 这个名字为这个脚本的
文件名
使用命令
#pppd call wcdma
这样就启动了 pppd 程序
pppd 程序的作用就是建立协议,生成网络接口 ppp0(如果第一个).下面是一个 pppd call 脚本
的例子:
#/etc/ppp/peers/wcdma
#This is pppd script, used Huawei EM770W(Union)
/dev/ttyUSB0
115200
crtscts
modem
debug
#nodetach
usepeerdns
defaultroute
user "3gnet"
0.0.0.0:0.0.0.0
connect '/usr/sbin/chat -s -v -f /etc/ppp/wcdma-connect-chat'
有关 pppd 更多的意义请直接使用 linux 帮助 man pppd
下面是一些重要参数的解释
参数
意义
/dev/ttyUSB0
接口
115200
接口波特率
crtscts
接口带硬件流控
modem
这个参数使得 pppd 进程将等待模块发回的 CD (Carrier Detect)信号,与
local 真好相反
debug
输出调试信息
nodetach
不后台运行,默认是后台运行的
usepeerdns
使用 dns
defaultroute
本地和远端的 ip 都设为 0 使得接入的 isp 分配本地的 ip 地址
user “3gnet”
用户名
connect ‘…’
调用连接 chat 脚本
chat 脚本
chat 脚本是真正 AT 指令的发送和接收脚本,下面是一个 chat 脚本
#/etc/ppp/wcdma-connect-chat
TIMEOUT 5
ABORT "DELAYED"
ABORT "BUSY"
ABORT "ERROR"
ABORT "NO DIALTONE"
ABORT "NO CARRIER"
#"AT
#'OK-+++\c-OK' ATH0
TIMEOUT 5
'' AT
OK AT+CGDCONT=1,"IP","3gnet",,0,0
OK ATDT*99#
CONNECT ''
chat 脚本主要有 TIMEOUT 、ABORT 和 AT 指令交互等等构成。更多帮助使用 man chat。
TIMEOUT 不解释了,ABORT 指定了 AT 指令交互时,出了什么样的错误 chat 将退出。AT 指
令交互是”接收” “发送”的形式。
比如第一行,意思是不接收任何信息,直接发送 AT
'' AT
第二行的意思是等待接收 OK,如果 OK,发送 AT+CGDCONT=1…这个命令。
如果一切正常,会看到如下 log。我们可以在 log 看到 3g 模块上 AT 指令的交互情况
~ # pppd call wcdma
timeout set to 5 seconds
abort on (DELAYED)
abort on (BUSY)
abort on (ERROR)
abort on (NO DIALTONE)
abort on (NO CARRIER)
timeout set to 5 seconds
send (^MAT^M)
expect (OK)
A^M^M
OK
-- got it
send (AT+CGDCONT=1,"IP","3gnet",,0,0^M)
expect (OK)
^M
AT+CGDCONT=1,"IP","3gnet",,0,0^M^M
OK
-- got it
send (ATDT*99#^M)
expect (CONNECT)
^M
ATDT*99#^M^M
CONNECT
-- got it
send (^M)
Serial connection established.
using channel 9
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xf5d87df8> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x20 <asyncmap 0x0> <auth chap MD5> <magic 0x172fd2b> <pcomp>
<accomp>]
No auth is possible
sent [LCP ConfRej id=0x20 <auth chap MD5>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xf5d87df8> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x21 <asyncmap 0x0> <magic 0x172fd2b> <pcomp> <accomp>]
sent [LCP ConfAck id=0x21 <asyncmap 0x0> <magic 0x172fd2b> <pcomp> <accomp>]
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-dns3
0.0.0.0>]
rcvd [LCP DiscReq id=0x22 magic=0x172fd2b]
rcvd [LCP ProtRej id=0x23 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-dns3 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-dns3 10.11.12.14>]
rcvd [IPCP ConfNak id=0x2 <ms-dns1 10.11.12.13> <ms-dns3 10.11.12.14> <ms-wins
10.11.12.13> <ms-wins 10.11.12.14>]
sent [IPCP ConfReq id=0x3 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 10.11.12.13>
<ms-dns3 10.11.12.14>]
rcvd [IPCP ConfReq id=0x10]
sent [IPCP ConfNak id=0x10 <addr 0.0.0.0>]
rcvd [IPCP ConfRej id=0x3 <compress VJ 0f 01>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns3 10.11.12.14>]
rcvd [IPCP ConfReq id=0x11]
sent [IPCP ConfAck id=0x11]
rcvd [IPCP ConfNak id=0x4 <addr 172.20.255.208> <ms-dns1 202.99.160.68> <ms-dns3
202.99.166.4>]
sent [IPCP ConfReq id=0x5 <addr 172.20.255.208> <ms-dns1 202.99.160.68> <ms-dns3
202.99.166.4>]
rcvd [IPCP ConfAck id=0x5 <addr 172.20.255.208> <ms-dns1 202.99.160.68> <ms-dns3
剩余17页未读,继续阅读
huangmoumou55
- 粉丝: 0
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0