笔记本电脑GPRS上网(Slackware Linux)
应用环境:
- 网络:中国移动GPRS
- 操作系统:Slackware Linux 10.1,内核版本2.6.10,使用udev+hotplug
- 硬件:USB IrDA适配器,Nokia 6100手机
- 软件:irda-utils 0.9.16 ,wvstreams 3.75.0 ,wvdial 1.54.0
其中irda-utils是下载源代码自己编译安装的;wvstreams和wvdial是在 www.linuxpackages.net 下载为Slackware 10.0编译好的tgz包安装的。用其它发行版的可以到网上搜索适合自己的软件包。
操作步骤:
- 手机的设置:功能表-数据连通-GPRS-GPRS调制解调器设置-修改接入点-GPRS接入点,设置成cmnet
- 安装上述软件。
如果你会编辑pppd的对话脚本,也可以不安装wvstreams和wvdail,我懒得看文档,所以用了个偷懒的法子。
建立 /etc/wvdial.conf 文件,内容如下:[Dialer Defaults]
Modem = /dev/ircomm0
Baud = 115200
Phone = *99***1#
Username = any
Password = any
New PPPD = yes
Stupid Mode = 1
其中的Username和Password可以用任意字符串。 - 插上USB IrDA适配器,系统自动识别为irda0(用dmesg看到),并加载驱动模块stir4200,irda
- 加载必要的模块(以下操作均需要有root权限,#表示root提示符)
# modprobe ircomm
# modprobe ircomm-tty - 绑定irda设备,命令是:
# irattach irda0 -s
其中irda0是在dmesg命令的输出中看到的设备号
- 打开手机的红外连接,放到USB适配器旁,输入命令:
# irdadump
在命令输出中看到有 Nokia 6100的字样,说明手机与红外接口的通讯正常。
- 拨号,命令:
# wvdial
从命令的输出中可以看到拨号是否成功,如果见到以下信息说明已经建立了连接。
--> local IP address 10.99.3.97
--> remote IP address 10.6.6.6
--> primary DNS address 211.136.20.203
--> secondary DNS address 211.136.17.107
如果拨号成功之后,但是上不了网,请用route命令检查一下路由表,看看缺省路由是不是指定到其它设备去了。在我的机器上,缺省路由设在我的wifi路由器上,指定设备是无线网卡eth1。为了用GPRS上网,在用wvdial命令拨号之前,要先用 route del default 删除原先的缺省路由,这样拨号之后系统会自动建立使用ppp0设备的新的缺省路由。
上面的过程看起来挺复杂,其实一旦设置好,实际使用的时候只需要步骤3,4,5,7即可,而且这些命令可以放到一个脚本里,使用起来就更方便了。