Note: 本文在 中国移动 GPRS, Motorola L71 和 Kubuntu 7.10 下测试通过.
话说几天前网络抽风, 导致一直无法上外网. 想到手机上面还有一些 GPRS 包月流量, 不用白不用,干脆就利用手机来上网算了.
Motorola 的手机在 Windows 下面可以通过 mobile phoneTools 的设置向导来上网, 很简单, 不过要使用 USB 连接线 (我不知道有没有不用 USB 连接线的方法). 在 Linux 下面没有这样的软件, 我们只好自己动手,丰衣足食了.
设想是这样的: 由于用 USB 连接电脑进行无线上网毕竟还是需要一条 USB 连接线, 比较麻烦. 我们现在通过蓝牙来连接手机, 再通过手机连接 GPRS 网络使得电脑可以访问 Internet.
首先, 配置蓝牙连接的 rfcomm 设备.
- 扫描手机 (当然, 手机要设置成允许被找的模式):
sudo hcitool scan
上面的命令将会得到手机的 mac 地址 (形如 00:00:00:00:00:00), 记录下来.
- 查找手机蓝牙的 DUN 服务信息:
sdptool browse 手机的 mac 地址
在命令的输出中找到”Service Name: Dial-up Networking”, 在项目”Protocol Descriptor List:”中的 “RFCOMM”里有个 “Channel:”, 记住这个数字.
- 编辑 /etc/bluetooth/rfcomm.conf, 在其中加入这么一段:
rfcomm0 {
bind yes;
device 手机的 mac 地址;
channel 手机 rfcomm 的 id;
comment “Bluetooth Connection”;
}保存.
- 运行
sudo /etc/init.d/bluetooth restart
重启蓝牙服务.
好了, 蓝牙配置完成, 下面来设置 PPP 拨号. 随便找一个你喜欢的 PPP 拨号软件 (这里以 Kubuntu 自带的 KPPP 为例).
- 在 KPPP 的主界面上, 选择 配置.
- 在 配置窗口的 账户 选项卡上, 选择 新建.
- 添加 电话号码: *99***1#, 设置认证方式为 基于脚本.

- 在 网关 选项卡里, 选择 将默认路由指派给此网关.

- 在 登录脚本 选项卡里,添加 SEND AT+CGDC. (注意, 不同手机的初始化命令可能不同, 可以上网找找, 有些手机是在这里设置接入点 — 如 cmnet — 的名称).

- 好了, 回到配置页面, 在 调制解调器 选项卡上, 新建调制解调器.
- 选择调制解调器 (/dev/rfcomm0), 添加.

- 现在回到 KPPP 主界面, 直接点连接, 应该可以通过手机进行 GPRS 上网了.
Note: 第一次连接的时候可能会要求和手机进行配对. 如果在配对的时候没有弹出输入 PIN 的对话框,可以试试在配对前运行 sudo passkey-agent –default /usr/bin/bluez-pin
最后, 给个上去后的截图:














2007年10月17日 星期三 19:7:51
mark
不过小心超流量……我最高纪录是一个晚上1.2G(CDMA),不过那时20包月不限流量。
2007年10月17日 星期三 20:8:55
@windywinter

呵呵, 现在就要超流量了, 于是不用 gprs 上网了
2007年10月19日 星期五 10:10:59
专程过来ym一下
2007年10月29日 星期一 20:8:12
唔~主题挺 pp 的~~
2007年10月29日 星期一 21:9:34
@pluskid

2008年05月18日 星期日 15:3:42
ym… 以及,要求添加我的链接。
2008年05月26日 星期一 12:12:33
这里多少年没更新了.. 经常看你的Google Reader Shared Items, 怎么没看你的blog有点动静?
2008年05月26日 星期一 19:7:24
@Ai.Freedom
最近一直想写一点东西的~ 就是没时间 T_T
2008年07月17日 星期四 9:9:47
哥们,我这样设置的并未成功。pppd进程异常退出:退出状态16。
ATZ
OK
ATM0L0
OK
ATX3
OK
ATDT*99#
CONNECT
~}#@!}!} } }2}#}$@#}!}$}%\}”}&} }*} } g}%~
以上是状态。
以下是ppp-logfile
Jul 16 23:44:52 jin-laptop pppd[4512]: pppd 2.4.4 started by jin, uid 1000
Jul 16 23:44:52 jin-laptop pppd[4512]: Using interface ppp0
Jul 16 23:44:52 jin-laptop pppd[4512]: Connect: ppp0 /dev/rfcomm0
Jul 16 23:44:55 jin-laptop pppd[4512]: PAP authentication succeeded
Jul 16 23:44:56 jin-laptop pppd[4512]: LCP terminated by peer
Jul 16 23:44:59 jin-laptop pppd[4512]: Connection terminated.
Jul 16 23:44:59 jin-laptop pppd[4512]: Modem hangup
Jul 16 23:44:59 jin-laptop pppd[4512]: Exit.
2008年07月17日 星期四 9:9:48
应该是连上了,但是在服务器那边。就断开了,不知何故。请支教。
2008年07月17日 星期四 20:8:52
我的要把AT+CGD。。。。。。加到,调制解调器的第二个初始化命令中。就可以了。晕。搞了一天。