赵斌

赵斌的博客

他的个人主页  他的博客

华为ET128 OpenSuse 3G 上网

赵斌  2009年09月05日 星期六 05:28 | 2276次浏览 | 2条评论

原文通过blogbus2zeuux工具同步发布:http://antmanler.blogbus.com/logs/45799478.html

文章发布时间:2009/9/4/10/31

[牢骚]原来到交管局上"交规"也是这么痛苦的一件事......

上个月寝室网就停了,于是准备体验"无限"的快感,总在电脑城跑,老板也认识不少,折腾了几天终于能上3G了......
然后就是几天被OpenSuse折腾......还好现在好多了,已经平稳运行一个星期了.

我买的移动的G3无线上网,主要咱基本不用电脑,也要在网上爬着,这样包小时就要命了,所以买了张移动G3,20G/月,一张福建的2G/月(省外用),设备是华为的ET128.

之前给小黑做了个大手术,随即系统也投奔opensuse了,在网上查了好多ET128在linux中的配置,最后终于自动化了,鉴于网上其它资料都不是很全,所以把自己的经历写下来和大家分享.

系统:
opensuse 11.1 - 11.2M6 都行(Linux lyy 2.6.31-rc7-4-default #1 SMP 2009-08-24 17:40:12 +0200 i686 i686 i386 GNU/Linux)
其它的发行版本同理(没有一一测试)

需要: 一般源里都有,实在不行就google下
usb_modeswitch 1.0.2 (libusb 0.1.12 is required), 把华为的光盘转换称usb modem.
WvDial 1.60 拨号软件,试了好多就着个好用,kppp貌似也行,但没成功过.

下面就是修改配置文件,随便用你喜欢的编辑器就行(in super mode):

[/etc/usb_modeswitch.conf]
如果你没有其它设备需要用usb_modeswitch的话,建议就把ET128的设备添加进去就行
ET128的 ID是12d1:1da1 (切换后会变成12d1:1d09), 可以用 lsusb | grep Huawei 查看
下面是配置文件的内容,来源(以及后面的一部分) l1nuxer

 #----------------------------------
 
# HUawei ET128 TD-SCDMA/GSM
# Editor: l1nuxer
# Date: 2009-07-10

DefaultVendor=0x12d1
DefaultProduct=0x1da1

TargetVendor=0x12d1
TargetProduct=0x1da1

HuaweiMode=1

之后在终端里用root用户执行: usb_modeswitch -W, 在这一步有时候会报错,但是发现只要在 /dev 里出现 ttyACM0, ttyACM1, ttyACM2就没有问题,错误可以乎略
上一步如果成功,就可以配置wvdial了, 同样在终端里: wvdialconf

[/etc/wvdial.conf]
移动G3在这里拨号设置都一样,直接把下面的贴过去就行(当然你有多个拨号设置,可以参考wvdial的文档,进行配置):

 [Dialer Defaults]
 
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem = /dev/ttyACM0
Phone = 0
Idle Seconds = 300
Modem Type = USB Modem
Stupid Mode = 1
Compuserve = 0
Baud = 460800
Auto DNS = 1
Dial Command = ATDT
Ask Password = 0
ISDN = 0
Phone = *99***1#
Password = any
Username = any
Stupid Mode = 1

[拨号]
上面都搞定之后就可以拨号了, 终端命令: wvdial (如果不是默认,要跟对应拨号名称如: wvdial myg3)
如果正常的话应该是下面这个样子那么恭喜你可以畅游3g了.

 --> WvDial: Internet dialer version 1.60
 
--> Cannot get information for serial port.
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Modem initialized.
--> Idle Seconds = 300, disabling automatic reconnect.
--> Sending: ATDT*99***1#
--> Waiting for carrier.
ATDT*99***1#
CONNECT 2800000
--> Carrier detected. Starting PPP immediately.
--> Starting pppd at Fri Sep 4 21:03:00 2009
--> Pid of pppd: 20683
--> Using interface ppp0
--> local IP address 10.210.179.136
--> remote IP address 192.200.1.21
--> primary DNS address 211.136.17.107
--> secondary DNS address 211.136.20.203
--> Script /etc/ppp/ip-up run successful
--> Default route Ok.
--> Nameserver (DNS) Ok.
--> Connected... Press Ctrl-C to disconnect

如果出现
--> warning, no nameserver found `/etc/resolv.conf`
--> Nameserver (DNS) failure, the connection may not work.
目前我是通过手动将DNS信息(拨号时会显示)添加到 /etc/resolv.conf 文件中,同样可以畅游3g了....网上找了久未发现完美解决方法,后面我编写了个脚本,自动完成这步,断线时重新netconfig update.

[自动化脚本]
上面收工步骤固然可以上网,但是太麻烦了,于是要写个脚本自动化点....
-----USB 自动转换, 同样参考 l1nuxer , 脚本在压缩包里,放到 /etc/udev/rules.d/
-----自动拨号, 在上一个脚本种实现了,只要插上无线网卡就自动拨号,更改DNS
-----拨号脚本, 挂断脚本都放在 /usr/sbin/ 种
-----流量统计:基于 DNetStats-v1.2.3, 自己增加了统计总流量和设置初始流量的功能,有图有真相:

[脚本下载及说明]
下载地址: antmanler.g3dial.tar.gz
---- conf/  文件夹里是配置文件,把里面的文件都放在 /etc中
 |-- g3dial/ 文件夹里面是脚本, 把里面的文件放到 /usr/sbin/ 中
 |-- DNetStats-v1.2.3/ 文件夹是流量统计软件源码,我修改过的,编译后可以试用,需要QT 4
 |-- 40-myg3modem-drivers.rules 文件,放到 /etc/udev/rules.d/里面

哦了, 拨号:直接把ET128查进去就行,然后 alt+f2 打开 dnetstats 监控流量, 上网.....
或者终端里用 g3dialon, 挂断: g3dialoff

GOOD LUCK!

评论

我的评论:

发表评论

请 登录 后发表评论。还没有在Zeuux哲思注册吗?现在 注册 !
王单单

回复 王单单  2009年09月05日 星期六 15:57

看起来很麻烦,唉

1条回复

暂时没有评论

Zeuux © 2024

京ICP备05028076号