精品文档,知识共享1
Linux平台上利用3G模块进行拨号上网
一.拨号步骤
1. 分别建立以下文件/etc/ppp/gprs-connect-chat,/etc/ppp/peers/gprs,
/etc/ppp/chap-secrets,和/etc/ppp/ppp-off;
2. 连接设备,在dev目录下查看是否有文件ttyACM0或者ttyACM1等;
3.在命令行中输入命令pppd call gprs进行连接。
二.具体实施过程
1.建立相关文件
默认情况在/etc/ppp/目录下建立文件gprs-connect-chat,内容如下(每个参数解释在ppp-howto中有详细解释。它是在ppp底层会话的时候给chat进程的参数,每行是一个“期望/发送”的组合序列。当出现一些经典的错误如:"LCP: timeout sendingConfig-Requests" , "serial line is not 8 bit clean...",“serial line is looped back”等,去参看方式2提到的两个文档,或者google。)
#vi /etc/ppp/gprs-connect-chat
TIMEOUT 15
ABORT '\nBUSY\r'
ABORT '\nNO ANSWER\r'
ABORT '\nRINGING\r\n\r\nRINGING\r'
#’’ AT
#'OK-+++\c-OK' ATH0
TIMEOUT 40
‘’ \rAT //注意是2个单引号
OK ATS0=0 //
OK ATE0V1
OK AT+CGDCONT=1,"IP","CMNET" //设置isp接入网关为中国移动的cmnet
OK ATDT*99***1# //中国移动gprs的接入号吗
CONNECT ‘’
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 建立文件/etc/ppp/peers/gprs,它的作用是给pppd进程提供配置参数(详见man 8 pppd 的输出内容,如果出现问题这个将是非常重要的参考页),内容如下:
#vi /etc/ppp/peers/gprs
# Usage: root>pppd call gprs
/dev/s3c2410_serial1 //改成自己的端口名
115200 //改成自己串口波特率
nocrtscts //无硬件流控
modem //这个参数使得pppd进程将等待模块发回的CD (Carrier Detect)信号,与local真好相反 #noauth //无认证方式
debug //把调试信息输出到/var/log/messages,在调试成功后去掉它,以减少垃圾的产生。
nodetach //表示不要让pppd启动之后转为后台进程
#hide-password
#以下的3个参数一般不可少
usepeerDNS //使用服务器端协商的DNS就可以设置参数usepeerdns
noipdefault //不使用默认IP就可以加入参数noipdefault
defaultroute //表示把服务器指定的服务器IP地址作为默认路由
user smsong //设置接入的用户名,在chap-secrets或者pap-secets中使用
: //本地和远端的ip都设为0使得接入的isp分配本地的ip地址
ipcp-accept-local //表示接受服务器分配的本机IP地址,也就是isp给自己分配动态的IP地址 #ipcp-accept-remote //表示接受服务器指定的服务器IP地址
#lcp-echo-failure 12 //当连续12次没有收到发出的LCP回声请求时,就认为服务器端已不再响
应,退出执行,次数可灵活决定。
#lcp-echo-interval 3
noccp //不需要压缩控制协议,有可能对端不需要,根据自己的isp的情况
#novj
#novjccomp
persist //保证在连接断开的情况下不退出,并尝试重新打开连接
connect '/usr/sbin/chat -s -v -f /etc/ppp/gprs-connect-chat'
//pppd调用chat会话进程接入对端isp,启动对端的pppd,然后本地pppd与对端的pppd一起进行协商网络参数和chap/pap认证,成功后,再进行ncp层的ip的分配。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++