应用环境:
网络:中国移动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即可,而且这些命令可以放到一个脚本里,使用起来就更方便了。