【专业技术】linux下实现3G拨号上网

linux下要实现3G拨号上网,除了3G网卡和对应的3G卡外,软件上需要对应的网卡驱动和pppd拨号程序,pppd拨号程序一般较容易得到,如果是嵌入式平台,交叉编译即可,编译过程中可能会遇到一些错误,但都不是大问题,一般很容易解决。而3G网卡驱动对于刚接触的人来说可能稍微难一点,大部分的3G模块内核中已经得到支持。如果不幸内核中没有得到支持,那么自己添加支持也是很容易的。下面介绍两种驱动3G网卡的方法。

linux内核中USB-GSM模块的驱动主要是drivers/usb/serial/options.c文件。看了此文件会非常明了,对一个3G网卡的支持主要就是两个参数,一个是厂商ID,一个是设备ID,只要3G网卡可以被USB识别,那么我们很容易得到这个USB设备的设备ID和厂商ID,得到之后,我们把这两个参数添加进option.c文件重新编译得到option.ko,那么这个3G网卡一般就能正常工作了。

第二种方法是使用usb-modeswitch来是3G网卡正常工作。这种方法我没有实际使用过,下面是从网上看到的一篇文章,可以作位参考。

我的3G上网卡是华为 E1750,操作系统是openSUSE 11.2,之前只能在虚拟机运行的Windows里上3G,感觉这样实在不方便,于是想到了直接在Linux里连接3G网络。 1. software http://www.draisberghof.de/usb_modeswitch/

usb-modeswitch

usb-modeswitch-data libusb

2. install

安装软件 root# tar jxvf usb-modeswitch-1.1.3.tar.bz2 root# cd usb-modeswitch-1.1.3/ root# make install

root# tar jxvf usb-modeswitch-data-20100707.tar.bz2

root# cd usb-modeswitch-data-20100707/ root# make install then upgrade libusb to the lastest version. root# cp /usr/share/doc/packages/ppp/scripts/pon /usr/local/sbin root# cp /usr/share/doc/packages/ppp/scripts/poff /usr/local/sbin root# chmod ug+x /usr/local/sbin/pon /usr/local/sbin/poff

接下来,接上3G上网卡,可以看到 lsusb 输出的结果多了"USB Modem"字样。

root# lsusb ... Bus 002 Device 010: ID 12d1:1001 Huawei Technologies Co., Ltd. E620 USB Modem ... 3. configure 建立3个PPP配置文件。 root# cat /etc/ppp/peers/wcdma nodetach lock /dev/gsmmodem 115200 user "card" password "card" crtscts show-password usepeerdns noauth noipdefault novj novjccomp noccp defaultroute ipcp-accept-local ipcp-accept-remote connect '/usr/sbin/chat -s -v -f /etc/ppp/peers/wcdma-chat-connect' disconnect '/usr/sbin/chat -s -v -f /etc/ppp/peers/wcdma-chat-disconnect'

root# cat /etc/ppp/peers/wcdma-chat-connect

ABORT 'NO CARRIER' ABORT 'ERROR' ABORT 'NO DIALTONE' ABORT 'BUSY' ABORT 'NO ANSWER' '' \rAT OK \rATZ OK \rAT+CGDCONT=1,"IP","3gnet",,0,0 OK-AT-OK ATDT*99# CONNECT \d\c root# cat /etc/ppp/peers/wcdma-chat-disconnect ABORT "ERROR" ABORT "NO DIALTONE" SAY "\nSending break to the modem\n" '' "\K" '' "+++ATH" SAY "\nGoodbay\n"

4. connect 拔号连接 root# pppd call wcdma & ...... Serial connection established. Using interface ppp0 Connect: ppp0 <--> /dev/gsmmodem CHAP authentication succeeded CHAP authentication succeeded Could not determine remote IP address: defaulting to 10.64.64.64 not replacing default route to eth0 [10.217.15.1] local IP address 172.27.25.133 remote IP address 10.64.64.64 primary DNS address 202.106.195.68 secondary DNS address 202.106.46.151 Script /etc/ppp/ip-up finished (pid 10543), status = 0x0 手工添加DNS root# echo "nameserver 202.106.46.151" >> /etc/resolv.conf 手工指定默认网关 root# route add default gw 172.27.25.133 测试网络是否可用 root# ping -c 5 www.sina.com.cn PING libra.sina.com.cn (202.108.33.80) 56(84) bytes of data. 64 bytes from 202.108.33.80: icmp_seq=1 ttl=56 time=39.6 ms 64 bytes from 202.108.33.80: icmp_seq=2 ttl=56 time=48.3 ms 64 bytes from 202.108.33.80: icmp_seq=3 ttl=56 time=46.8 ms 64 bytes from 202.108.33.80: icmp_seq=4 ttl=56 time=44.6 ms 64 bytes from 202.108.33.80: icmp_seq=5 ttl=56 time=44.1 ms --- libra.sina.com.cn ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4006ms rtt min/avg/max/mdev = 39.670/44.739/48.330/2.957 ms

5. disconnect root# poff

原文发布于微信公众号 - 程序员互动联盟(coder_online)

原文发表时间:2015-05-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Ceph对象存储方案

Luminous版本PG 分布调优

Luminous版本开始新增的balancer模块在PG分布优化方面效果非常明显,操作也非常简便,强烈推荐各位在集群上线之前进行这一操作,能够极大的提升整个集群...

3265
来自专栏闻道于事

js登录滑动验证,不滑动无法登陆

js的判断这里是根据滑块的位置进行判断,应该是用一个flag判断 <%@ page language="java" contentType="text/html...

7208
来自专栏张善友的专栏

Miguel de Icaza 细说 Mix 07大会上的Silverlight和DLR

Mono之父Miguel de Icaza 详细报道微软Mix 07大会上的Silverlight和DLR ,上面还谈到了Mono and Silverligh...

2737
来自专栏陈仁松博客

ASP.NET Core 'Microsoft.Win32.Registry' 错误修复

今天在发布Asp.net Core应用到Azure的时候出现错误InvalidOperationException: Cannot find compilati...

4878
来自专栏张善友的专栏

LINQ via C# 系列文章

LINQ via C# Recently I am giving a series of talk on LINQ. the name “LINQ via C...

2675
来自专栏我和未来有约会

Silverlight第三方控件专题

这里我收集整理了目前网上silverlight第三方控件的专题,若果有所遗漏请告知我一下。 名称 简介 截图 telerik 商 RadC...

4095
来自专栏pangguoming

Spring Boot集成JasperReports生成PDF文档

由于工作需要,要实现后端根据模板动态填充数据生成PDF文档,通过技术选型,使用Ireport5.6来设计模板,结合JasperReports5.6工具库来调用渲...

1.2K7
来自专栏ASP.NETCore

ASP.NET Core 整合Autofac和Castle实现自动AOP拦截

除了ASP.NETCore自带的IOC容器外,我们还可以使用其他成熟的DI框架,如Autofac,StructureMap等(笔者只用过Unity,Ninjec...

694
来自专栏落花落雨不落叶

canvas画简单电路图

65911
来自专栏杨龙飞前端

scrollto 到指定位置

2554

扫码关注云+社区