免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4183 | 回复: 19
打印 上一主题 下一主题

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-07-08 11:58 |只看该作者 |倒序浏览
这两天根据实验室需要,一直在不停的找linux下面可用的无线网卡,也曾经GOOGLE了不少资料。但是这些资料看起来很多,但是实际上符合我的需求的可以说很少,主要有以下几个问题:

一、        大多是讲使用ndis wrapper的方式。这种方法对于内核版本2.4.20的好像有困难,对于其windows xp的驱动也不是100%可用。而RH 9.0恰恰用的是2.4.20,如果再需要换内核就比较麻烦了。最好是拿驱动编出模块来直接加载就能用。
二、        所讲的无线网卡多是PCMICA、USB的,对于标准PCI的讲的相对较少。
三、        所讲的无线网卡在市场上不一定好买,比如说对于现在卖的较多的TP-link、D-Link的网卡,很难明确的找到是否可用的回答,往往回答都很含混。

鉴于以上分析,我试用了madwifi的驱动(见论坛其它帖子里我的分析),使用了当前最好买也最便宜(当然假货也最多)的Tp-link 550G 802.11G网卡。这个网卡是标准PCI的,带tp-link的域展功能,是TP-link 802.11g的代表产品。之所以用tp-link主要是因为它便宜,也好买。

下面我的讲述就不做什么分析了,完全按我实现的步骤。

一、        在硅谷我一个做电脑生意的朋友处拿了个tp-link 541G的路由器,又拿了一个550G的无线网卡。550G只有“域展”(加大传输距离,号称室外可达800米,没有亲自试过)没有“速展”(最高速率做到了108Mb/s,而且与标准的54M设备兼容)。本来我是打算拿650G的网卡,因为650G是两者都有的新产品。但是人家说650G出货少,万一我试不成厂家那里不好退货。也不好强求所以就作罢了。550G也不错了。
二、        拿回来之后先调AP。先简单说一下我们现在的网络环境。我们就一个屋,20多台机器,从上面交换机接下来一根100M的对外的LAN线,交换机上分的子网是159.226.204.0/255.255.255.0.,网关159.226.204.199,然后是多个HUB一级一级的往下分。
三、        AP的安装还是比较简单的。找个HUB口,把AP四个LAN口之一与HUB相连。找一台笔记本也接到这HUB上,改笔记本的IP为192.168.1.250/255.255.255.0,打开浏览器访问AP http://191.268.1.1:80,在这个WEB界面里先设AP的IP为159.226.204.250,设essid为wifiap,设WEB加密方式,128位共享口令wifi000000001(13位ASCII码)。设完后重启,找了个迅驰笔记本进windows先测试AP,可以连上没问题。
四、        下面讲关键的无线网卡的配置。找台装好了windows xp和redhat 9.0双系统的机器,拆机箱把原来的LAN网卡拿掉,换上550G。
五、        开机先进windows,直接提示找到硬件。在随卡的驱动盘上找550G/650G的目录搜索驱动,(安装后好像是不用重启)。然后还在装TP-link的管理工具,在我的电脑里找光盘上550G/650G的目录,就一个setup.exe装完即可。搜索网络找到AP(记住essid为wifiap),填入密码就可以上网了。对于IP的设置也是一样。总之在windows下的安装很简单,说明书讲的很详细了。
六、        重启进red hat 9.0。启动过程中提示原来网卡找不到了,不用理会。先检查/usr/src/linuc下有没有源代码,如果没有就用rpm –hvi kernel-source-2.4.20-8.rpm(好像在第3张盘)装上。
七、        准备源代码目录:
# cd /usr/src/linux
# make menuconfig     // 在对话框出现后直接选exit,然后保存配置即可
# vi Makefile       // 找到版本号处的“EXTRAVERSION=8-custom”,改成“EXTRAVERSION=8”
# make dep       //注意只需make dep,不需make
八、        在http://madwifi.sourceforge.net下载最新的源代码包madwifi-cvs-current.tar.gz.
九、        编译安装驱动:
# tar zxvf madwifi-cvs-current.tar.gz
# cd madwifi
# make KERNELPATH=/usr/src/linux
# make install
# /sbin/modprobe ath_pci
以上各步都可能出问题,使用你的智慧和经验去解决吧。
# dmesg
成功配置后,在dmesg里最后的输出应该可以看到550G的信息。
十、        此时/sbin/ifconfig只能看到一个lo接口。
# /sbin/ifconfig ath0 159.226.204.197 netmask 255.255.255.0
上面一句配置接口ath0的属性。接口是建立起来了,但是是不通的。需要用iwconfig配置无线参数。
# /sbin/iwconfig ath0 essid “wifiap” mode managed key “s:wifi000000001” rate auto
然后用iwconfig应该可以看到网卡成功的连接,速率应该是54M. 这时ping ap应该可以ping通:
# ping 159.226.204.250
但是上外网还不行。因为路由没有配置。加一句默认路由:
# route add default gw 159.226.204.199
这时就可以上外网了。
# lynx www.google.com
十一、        配置成功之后,可以改系统配置使之重启机器能够自动生效。
# cd /etc/sysconfig/network-scripts
# cp ifcfg-eth0 ifcfg-ath0
# vi ifcfg-eth0   //把首部的ONBOOT=yes改成ONBOOT=no
# vi ifcfg-ath0   //把首部的DEVICE=eth0改成DEVICE=ath0
# vi etc/sysconfig/hwconfig //拷贝一段PCI的设备,把driver改成ath_pci,desc任意改。
# vi /etc/rc.d/rc.local // 最后加一句/sbin/iwconfig ath0 essid “wifiap” mode managed key “s:wifi000000001” rate auto
十二、        重启动机器,再测试。All things done.


以上是我建立无线AP和在linux下使用无线网卡的全过程,总之还算是比较简单的。这个madwifi驱动适用于几乎所有Atheros芯片的网卡(注意只支持PCI、mini PCI、pcmica的,不支持USB的),内核2.4、2.6都可以,也就是说从red hat7.3就可以用,而且不用重编内核。希望能对在linux下使用无线的人一点参考。

论坛徽章:
0
2 [报告]
发表于 2005-07-08 12:00 |只看该作者

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案

占位 留待补充

论坛徽章:
0
3 [报告]
发表于 2005-07-08 14:21 |只看该作者

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案

[quote]原帖由 "jgj"]占位 留待补充[/quote 发表:


Waitting for........

论坛徽章:
0
4 [报告]
发表于 2005-07-09 19:12 |只看该作者

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案

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

这步什么意思?

论坛徽章:
0
5 [报告]
发表于 2005-07-09 22:32 |只看该作者

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案

因为刚装上的源码包是没有/usr/src/linux/.config这个文件的。编译madwifi源文件需要从/usr/src/linux/取配置信息,因此运行一个make menuconfig然后保存一下就可以。没必要和当前内核完全一致。

论坛徽章:
0
6 [报告]
发表于 2005-07-09 23:26 |只看该作者

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案

[quote]原帖由 "jgj"]编译madwifi源文件需要从/usr/src/linux/取配置信息[/quote 发表:

我不认为 make menuconfig 后直接存盘退出是为了 “编译madwifi源文件需要从/usr/src/linux/取配置信息”

“编译madwifi源文件需要从/usr/src/linux/取配置信息”这个理论又是从何而来的呢?

“make menuconfig 后直接存盘退出”据我所知,这样只是为了编译内核中有但目前系统没编译进去的东西(或模块)而已

论坛徽章:
0
7 [报告]
发表于 2005-07-13 17:30 |只看该作者

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案

不是这样的。实际原因是madwifi是需要考虑所有内核版本、CPU平台,以及具体内核参数的,同时madwifi编译的目标文件是一个内核模块,也需要与目标系统的参数(比如内核版本号)相一致。因此,在编译的时候必需获取这些参数。madwifi是从内核源代码目录下的.config,以及make dep生成的相关文件里读取这些参数的。
因为我们大多数据情况是在单机上安装redhat,所以装上kernel-src的rpm之后,用make menuconfig直接生成的.config文件与当前系统基本上是一致的,所以直接就可以给madwifi用(唯一需要改动的是Makefile里的版本号)。

论坛徽章:
0
8 [报告]
发表于 2005-07-13 18:10 |只看该作者

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案

嗯,看明白了,实际就是借助 kernel-source 环境编译出一个驱动自己的模块来

论坛徽章:
0
9 [报告]
发表于 2005-07-22 14:01 |只看该作者

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案

对,所以这是最简单的使用驱动的方法,不用重启,编译也最方便,移植性还好。

论坛徽章:
0
10 [报告]
发表于 2005-07-22 14:06 |只看该作者

Red Hat Linux 9.0与Tp-link 550G组建无线局域网的一种解决方案

今天给我的笔记本配了个802.11G的pcmica无线网卡,是TP-Link的510G。这个和我帖子里的550G实际上是一个产品线的,也是带“域展”功能,使用的芯片都是一样的。
用madwifi同样可用。这个算是我前文的补充吧。
这样对于pci和pcmica的都用了可用的了。唯一缺乏的是USB的。因为madwifi明确表示不支持USB的。稍有遗憾。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP