linux下ppp拨号无线上网

linux下用ppp上网需要两个程序:pppd和chat。ubuntu自带pppd和chat,可以使用man查看具体使用方法。

典型的ppp拨号需要准备几个文件:

1. pppd脚本。

2. chat脚本。

3. chap-secrets文件。

4. pap-secrets文件。

chat脚本是真正AT指令的发送和接收脚本,chat脚本主要有TIMEOUT,ABORT和AT指令交互等构成。TIMEOUT超时,ABORT指定AT指令交互时,出现什么样的错误chat将退出。AT指令交互是“接收”“发送”的形式。比如第一行,意思是不接收任何信息,直接发送AT

“”  AT

第二行的意思是等待接收OK。如果OK,发送AT+CGDCONT=1这个命令。

示例:

TIMEOUT         15
ABORT  ' BUSY '   
ABORT  ' NO ANSWER '   
ABORT  ' RINGING RINGING '
#'' AT  
#'OK-+++c-OK' ATH0
TIMEOUT         40
'' AT  
OK

ATS0=0
OK

ATE0V1
OK

AT+CGDCONT=1,"IP","CMNET"
OK

ATDT*99***1#
CONNECT
''

 注:执行完chat后,模块已经拨号成功了,之后是上层协议处理(后续专网可能要鉴权,公网不需要),若卡有费就可以上网了。

参考:

1. 《3g移植》   http://blog.csdn.net/duloveding/article/details/8287758

2. 《Linux下ppp拨号+3G模块(evdo 中兴MC8630模块)》  http://blog.csdn.net/memoryjs/article/details/7946878

3. 《Linux下ppp拨号》 http://wenku.baidu.com/view/74c5aed476a20029bd642d4f.html

4. chap和pap认证,http://docs.oracle.com/cd/E19253-01/819-7059/pppsvrconfig.reference-fig-23/index.html

5. ppp完全理解,http://blog.csdn.net/tianruxishui/article/details/44057607

原文地址:https://www.cnblogs.com/embedded-linux/p/5215424.html