本教程详细介绍了使用3G上网卡进行PPP拨号连接的方法与步骤,包括硬件安装、驱动程序配置及网络设置等,帮助用户轻松实现高速无线上网。
### 3G上网卡在Linux ARM板上的PPPD拨号详解
#### 一、概述
随着移动通信技术的发展,3G上网卡作为一种便捷的互联网接入方式,在嵌入式系统领域得到了广泛应用。对于基于Linux内核的ARM开发板而言,通过PPPD(PPP Daemon)程序实现3G上网卡的拨号上网是一种常见的解决方案。本段落将详细介绍如何在基于Linux内核的ARM开发板上使用3G无线上网卡完成拨号上网的过程。
#### 二、准备工作
1. **下载并安装PPPD**
- 下载最新版本的PPPD源码包,如`ppp-2.4.4.tar.gz`。
- 解压源码包:`tar zxvf ppp-2.4.4.tar.gz`
- 进入源码目录:`cd ppp-2.4.4`
- 配置编译环境:`.configure CC=arm-linux-gcc`
- 编译安装:`make`
2. **编译完成后处理**
- 在`ppp-2.4.4`目录下会产生`pppd`和`chat`两个可执行文件。
- 将这两个文件以及`pppdump`和`pppstats`拷贝到开发板的相应目录(如usr/sbin)中。
#### 三、配置文件与目录结构
1. **创建必要的目录**
- `mkdir /etc/ppp`
- `mkdir /etc/ppp/peers`
- `mkdir /etc/ppp/chat`
2. **配置认证文件**
- 复制`ppp-2.4.4`文件夹中的`etc.ppp`目录下的`pap-secrets`和`chap-secrets`文件到/etc/ppp目录下,并进行适当的修改。
- 示例:
```
# Secrets for authentication using CHAP
ctnet@mycdma.cn * vnet.mobi
# Secrets for authentication using PAP
ctnet@mycdma.cn * vnet.mobi
```
3. **创建Chat脚本**
- 在/etc/ppp/chat目录下新建一个名为`cdma`的文件,定义拨号过程中的命令序列。
```
ABORT NOCARRIER
ABORT NODIALTONE
ABORT ERROR
ABORT NOANSWER
ABORT BUSY
TIMEOUT 120
AT
OK
ATDT#777
CONNECT
```
4. **配置PPPD选项**
- 在/etc/ppp/peers目录下新建一个名为`cdma`的文件,定义拨号连接的具体参数。
```
/etc/ppp/peers/cdma
ttyUSB0
115200
nocrtscts
connect /usr/sbin/chat -v -f /etc/ppp/chat/cdma
debug
nodetach
ipcp-accept-local
ipcp-accept-remote
defaultroute
user ctnet@mycdma.cn
```
- 参数解释:
- `ttyUSB0` 表示CDMA modem连接到串口`dev/ttyUSB0`上。
- `115200` 表示串口波特率为115200bps。
- `nocrtscts` 表示不使用RTSCTS硬件流控制。
- `connect /usr/sbin/chat -v -f /etc/ppp/chat/cdma` 表示使用chat程序完成连接建立的会话过程,会话过程由`/etc/ppp/chat/cdma`文件控制。
- `debug` 表示开启调试模式。
- `nodetach` 表示不要让pppd启动之后转为后台进程。
- `ipcp-accept-local` 和 `ipcp-accept-remote` 分别表示接受本地和远程IP地址。
- `defaultroute` 表示将远程IP地址设置为默认路由。
- `user ctnet@mycdma.cn` 表示认证用户名。
5. **配置DNS服务器**
- 在/etc/resolv.conf文件中添加DNS服务器地址:
```
nameserver 61.128.128.68
nameserver 61.128.192.68
```
#### 四、拨号连接
1. **拨号操作**
- 执行拨号命令:
```
/usr/sbin/pppd call cdma
```
- 按`Ctrl+z`可以暂停拨号过程。
2. **注意事项**
-