您的位置:首页 > 运维架构 > Linux

分析在Linux下安装无线网卡设置全部方法详细

2012-07-24 10:44 615 查看
一、引言

这两天根据实验室内部的需要,承担了改造现有网络,增加无线AP的工程。由于本实验室长期从事Unix/Linux方面的研究和工程项目,有大量的Linux主机需要解决无线上网问题。为此笔者一直在广泛的搜寻Linux下面可以支持无线网卡,也曾经在GOOGLE上查阅了无数资料,包括硬件厂商的、第三方开源支持的,等等。但是这些资料看起来很多,但是实际上符合我的需求的可以说很少,主要有以下几个问题:

1. 现有的叙述Linux下面无线网卡支持方案的文章,绝大多是讲使用ndis wrapper的方式。这个软件包只支持2.6以上内核,对于内核版本2.4.20的根本不支持。而实验室内大多数机器都在使用传统的RedHat 9.0,其内核恰恰用的是2.4.20,如果再需要换内核就比较麻烦了。另外,它使用的重新利用WindowsXP驱动的方式,从里面分析二进制指令以转化成Linux驱动,但是目前转化率并不是100%完善,对windows xp的驱动也不是100%可用。

2. ndis wrapper需要重编译内核,这造成安装过程非常麻烦,另外很多已经在运行的应用是根本不允许再编译内核的。因此,最好拿来驱动编出模块,直接加载就能用。笔者认为驱动程序就是应该使用上尽量简化,比较反感需要重新编译内核的任何应用。

3. 所讲的无线网卡多是PCMICA、USB的,对于标准PCI的讲的相对较少。而我们需要支持的大多数是PC机,使用PCI网卡是最方便的,也是最省钱的。

4. 所讲的无线网卡在市场上不一定好买,所述的型号都是比较老的,或者说是国外广泛使用而在国内市场很少见的。而对于现在市面上最流行的TP-link、D-Link等常见网卡,却很难找到是否可以支持的明确回答,往往回答都很含混,使得读者没有方法判断,也没有精力去买挨个买网卡做实验。

鉴于以上分析,我试用了Madwifi的驱动,使用了当前最好买也最便宜(当然假货也最多)的Tp-link 550G 802.11G网卡。这个网卡是TP-link 802.11g的代表产品,是标准PCI接口的,带tp-link的域展功能(将802.11G的有效距离从30、40米扩展到最远108米,是TP-Link的一大独特卖点)。之所以用tp-link,也主要是因为它便宜,好买,对于我们这一下买几十个的规模非常经济。如果改D-link,则每个网卡要贵上一倍。

下面的讲述就不做什么原理分析了,完全按照已经实现的步骤。因此要求读者有最基础的Linux驱动配置知识。所选用的操作系统版本为RedHat 9,内核为2.4.20。对于2.6以上的内核,Madwifi驱动也作了完美支持,

二、网卡选型

出于省钱和好买的原则,在中关村的一个做电脑生意的朋友处拿了个tp-link 541G的路由器(即AP),又拿了一个550G的无线网卡。541G 用于做AP,550G用于安装在每台PC机上。550G只有“域展”(加大传输距离,号称室外可达800米,没有亲自试过)没有“速展”(最高速率做到了108Mb/s,而且与标准的54M设备兼容)。到目前为止TP-Link的最新无线网卡型号是650G,是两者兼有的新产品。但是当前650G还比较贵,出货少,万一我试验不成功厂家那里不好退货。所以也不好强求所以就作罢了——550G也已经不错了。

通过在网上查找资料,发现这个无线网卡的芯片型号为Atheros AR5005G,是madwifi支持的类型。

三、AP设置

拿回产品之后先设置AP。先简单说一下我们现在的网络环境。我们就一个房间,总共20多台机器,从学校校园网的交换机上面接下来一根100M的对外的LAN线,接到本实验室的一台交换机。交换机端口上划分的子网是159.226.204.0/255.255.255.0.,网关159.226.204.199,然后在实验室里面通过多个HUB一级一级的往下分。

AP的安装还是比较简单的,完全参照产品说明书中的配置方法:

1. 将AP直接接到交换机的某个端口上,或者随便接到局域网的某个HUB上。把AP四个LAN口之一与HUB相连。

2. 找一台笔记本也接到这HUB上,将改笔记本的IP为192.168.1.250/255.255.255.0(AP内置的默认地址)。

3. 打开浏览器,访问AP: http://191.268.1.1:80,在这个WEB界面里先设AP的IP为159.226.204.250。为了安全起见,将AP设上连接密码,例如设essid为“gait-wifi”,设WEB加密方式为128位共享口令,并输入密码(13位ASCII码)。在AP上设定好自动分配IP地址(DHCP)。设完后重启AP。
4. 先找一个迅驰笔记本,测试AP设置是否正常。通过Windows SP2内置的无线网络管理程序,成功的找到了AP,输入密码后连接正常,并且可以正确分配IP地址和DNS。---http://www.bianceng.cn

四、Linux软硬件平台

1. 硬件:普通PC,CPU为AMD AM2 3200+,内存512M。

2. 软件:RedHat 9,内核2.4.20。

五、网卡配置

下面讲关键的部分,Linux下Tp-link无线网卡的配置过程。

1. 找台装好了windows xp和redhat 9.0双系统的机器。拆开机箱,把原来的LAN网卡拿掉,换上550G。按原样装好机箱。

2. 开机先进windows,直接提示找到新硬件。在随网卡所附的驱动盘上找到550G/650G的目录,系统自动搜索驱动,安装后先不用重启。然后还要装TP-link的管理工具,在电脑里找光盘上550G/650G的目录,有一个setup.exe装完即可。重启之后,打开Windows无线管理,搜索无线网络找到AP(essid为gait-wifi),填入密码就可以上网了。IP和DNS的设置都是自动分配的。总之在windows下的安装很简单,说明书讲的很详细了。

3. 重启机器进入red hat 9.0。启动过程中提示原来网卡找不到了,不用理会。

4. 先检查/usr/src/linuc下有没有安装源代码(Madwifi驱动的编译是需要源代码文件的),如果没有,就找到Redhat安装光盘,用rpm –hvi kernel-source-2.4.20-8.rpm(好像在第3张盘)装上。

5. 在编译驱动之前,需要准备源代码目录:

# cd /usr/src/linux

# make menuconfig // 在对话框出现后直接选exit,然后保存配置即可

# vi Makefile // 找到版本号处的“EXTRAVERSION=8-custom”,改成“EXTRAVERSION=8”

# make dep //注意只需make dep,不需make。madwifi需要的只是一些有关系统内核配置信息的头文件,不需要重新编译整个内核。

6. 下载驱动程序源代码:在http://madwifi.sourceforge.net下载到最新版本的源代码包madwifi-cvs-current.tar.gz.

7. 编译驱动程序:

# cp madwifi-cvs-current.tar.gz /tmp

# cd /tmp

# tar zxvf madwifi-cvs-current.tar.gz

# cd madwifi

# make KERNELPATH=/usr/src/linux
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: