Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1686315
  • 博文数量: 607
  • 博客积分: 10031
  • 博客等级: 上将
  • 技术积分: 6633
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-30 17:41
文章分类

全部博文(607)

文章存档

2011年(2)

2010年(15)

2009年(58)

2008年(172)

2007年(211)

2006年(149)

我的朋友

分类: LINUX

2007-07-30 11:04:56

主题:RedHat9上安装无线网卡实现上网

PAGE 1 / 1 共6篇 首页 前页 后页 尾页 
阿南 发表于 2006-8-24 20:46 LINUX|编程 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

楼主: RedHat9上安装无线网卡实现上网

最近开发一个产品,基于linux,用PCMCIA扩展无线网卡。但起初对无线网络不是很了解,所以用google查了很多资料,现在能在RedHat9上实现无线上网了,有些进步,所以兴奋一下,希望和做过或将要把无线网络应用到嵌入式产品中的朋友们交流交流。。。。
公司用的都是TP-LINK的 TL-WN210无线网卡,没有linux下驱动,但网上有很多介绍ndiswrapper,来驱动的。下面是我参考网上多篇资料,实验成功的的步骤,目的是想了解无线网卡的配置、使用及一些基本知识。

在RedHat9上安装TP-LINK的 TL-WN210无线网卡驱动

Step 1:下载ndiswrapper。从该项目的主页()下载ndiswrapper-1.1.tar.gz。
Step 2:重新编译内核。在安装ndiswrapper包之前,要保证/lib/modules/2.4.20-8/build存在,它是指向 /usr/src/linux-2.4.20-8目录的符号链接。重新编译内核,否则安装ndiswrapper过程中,执行“depmod -a”命令时,会出现以下错误:
    depmod: *** Unresolved symbols in /lib/modules/2.4.21-166-default/misc/ndiswrapper.o。安装完执行“modeprobe ndiswrapper”命令时也会执行上述的一系列错误,而失败。
具体操作如下:切换到/usr/src/linux-2.4.20-8目录,运行make  mrproper保证源码树是干净的,查看该目录下的 Makefile,去掉EXTRAVERSION 的custom字样,运行make menuconfig,可以不修改,保存配置文件,运行make dep。
Step 3:安装ndiswrapper。解压缩下载的ndiswrapper-1.1.tar.gz文件,切换到压缩后的目录,运行make clean,再运行make install安装。
Step 4:安装网卡驱动。将网卡驱动光盘里该网卡在Windows XP下的安装信息文件(NET8180.INF)和系统文件(rtl8180.sys)复制到一个目录中(如在当前目录下新建TL-WN210,将两个文 件复制到TL-WN210目录)。用“ndiswrapper –I ./TL-WN210/NET8180.INF”命令来加载该网卡Windows下的驱动,安装成功后会提示:install  NET8180,如果用 “ndiswrapper –l”命令会列出加载的驱动程序。最后运行“modprobe  ndiswrapper”命令加载ndiswrapper模块,此时无线网卡的 POWER指示灯将闪烁(每次重启后,都需要重新执行“modprobe  ndiswrapper”命令加载ndiswrapper模块)。
Step 5:使用iwconfig 设定无线接口。当网卡的POWER指示灯将闪烁后,输入“iwconfig”命令列出可用的无线网络接口,及各接口的操作模式、频率、无线接入点的MAC 地址、信号质量、电源管理状态、密钥值等。
[root@rox]# iwconfig
Lo         no wireless extensions.
eth0         no wireless extensions.
Wlan0     IEEE 802.11b ESSID:off/any
Mode:Auto Frequency:2.412GHz Access Point: 00:00:00:00:00:00
Bit Rate=11Mb/s Tx-Power=20 dBm Sensitivity=0/3
RTS thr:2432 B Fragment thr:2432 B
Encryption key:off
Power Management:off
Link Quality:100/100 Signal level:-80 dBm Noise level:-256 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
Step 6:搜索网络。可用iwlist 来扫描邻近无线接入点的信标帧:
[root@rox]~# iwlist wlan0 scan
Wlan0         Scan completed :
Cell 01 - Address: 00:15:E9:DE:B1:5D
ESSID:"R$DNAN6"
(Unknown Wireless Token 0x8B01)
Mode:Master
Frequency:2.422GHz
Quality:0/100 Signal level:-80dBm Noise level:-256 dBm
Encryption key:on
Bit Rate:1Mb/s
Bit Rate:2Mb/s
Bit Rate:5.5Mb/s
Bit Rate:11Mb/s
Extra:bcn_int=100
Extra: atim=0
Step 7:连接无线网络
连接无线网络的第一步,是使用iwconfig 的essid 选项让网卡知道你想参与的无线网络的标识(ESSID):
[root@rox]# iwconfig wlan0 essid "R&DNAN6"
每个无线网络都有一个标识,而且区分大小写。若名称中含有空格,则必须以一对双引号括住。设定网络标识后,还需要该标识的密码(WEP key),否则执行上面指令后还不能连接上(用“iwconfig wlan0”时显示ESSID:off/any,而不是预期的ESSID: "R$DNAN6")。设定key指令:
[root@rox]# iwconfig wlan0 key B19227EF6E

设定好标识及密码之后,无线网卡的LINK指示灯会亮,表明已连接上无线网络的接入点。可以再一次用iwconfig 检查设定结果:
[root@rox]# iwconfig wlan0
Wlan0     IEEE 802.11b ESSID: "R$DNAN6"
Mode:Managed Frequency:2.412GHz Access Point: 00:15:E9:DE:B1:5D
Bit Rate=11Mb/s Tx-Power=20 dBm Sensitivity=0/3
RTS thr:2432 B Fragment thr:2432 B
Encryption key:B192-27EF-6E Encryption mode:restricted
Power Management:off
Link Quality:100/100 Signal level:-80 dBm Noise level:-256 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
除了WEP-key 之外,还必须选择WEP 系统形式。开放式(open)系统接受明文形式的数据帧,而受限(restricted)系统会丢弃明文形式的数据帧。
# iwconfig eth1 key open
# iwconfig eth1 key restricted
设定好所要用的WEP-key 与WEP 系统形式,你的无线网络接口可能还没启动,ping将会失败。
创建/etc/sysconfig/network-scripts/ifcfg-wlan0文件,使无线网卡自动获得IP地址。该文件内容如下:
BOOTPROTO=‘dhcp’
MTU=‘’
REMOTE_IPADDR=‘’
STARTMODE=‘onboot’
UNIQUE=‘’

编辑完上述文件后执行下面执令启动无线接口:
[root@rox]# ifconfig wlan0 up
现在就可以ping 通公司内部BBS了如:
[root@rox]# ping 192.168.1.99
PING 192.168.1.99(192.168..99)56(84) bytes of data.
64 bytes from 192.168.1.99: icmp_seq=1 ttl=127 time=4.46ms
64 bytes from 192.168.1.99: icmp_seq=2 ttl=127 time=1.68ms
64 bytes from 192.168.1.99: icmp_seq=3 ttl=127 time=2.01ms
--- 192.168.1.99 ping statistics ---    
3 packets transmitted, 8 received, 0% packet loss, time 3047ms
Rtt min/avg/max/mdev = 1.681/2.150/4.465/0.882 ms
然后进入X Window环境,打开浏览器,就可以上网了。


* - 本贴最后修改时间:2006-8-24 20:50:13 修改者:阿南


KEITHLEY 2007移动终端测试技术方案研讨会(北京、深圳)


mingdai 发表于 2006-8-25 09:42 LINUX|编程 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

2楼: 谢谢楼主

小弟最近正在做一个把无线网络应用到嵌入式产品中的项目,正苦于找不到uClinux下Pcmcia网卡的驱动编写方法,楼主的文章真是雪中送炭啊!


KEITHLEY 2007移动终端测试技术方案研讨会(北京、深圳)


阿南 发表于 2006-8-25 20:24 LINUX|编程 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

3楼: re mingdai:不要高兴的太早,该帖实验的环境是PC机,和嵌入式还

是 有很大的差别的。不知你的处理器用的是哪个?PCMCIA控制器用的是什么芯片,或是集成的。一般嵌入式系统的PCMCIA接口都是16位模式的,所以也 要买16们的PCMCIA网卡,还要带linux驱动的。而目前笔记本上用的,也就是市场上用PCMCIA网卡都是32位的,又称Cardbus。因此在 嵌入式系统上扩展PCMCIA无线网卡还要做很多工作,但不一定需要自己写驱动。



KEITHLEY 2007移动终端测试技术方案研讨会(北京、深圳)


mingdai 发表于 2006-8-28 09:02 LINUX|编程 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

4楼: to 阿南:

你好,谢谢你的提醒。

    我们处理器用的是ARM9,PCMCIA控制器用的是ELAN的VPU550和oxford。目前我们所见到的嵌入式系统开发版的PCMCIA接口确实都是16位模式的,所以我们正在考虑将其改为32位接口


KEITHLEY 2007移动终端测试技术方案研讨会(北京、深圳)


阿南 发表于 2006-8-29 20:54 LINUX|编程 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

5楼: ARM9什么型号的,我们用s3c2410+pd6710,已把PCB发出去了

 


KEITHLEY 2007移动终端测试技术方案研讨会(北京、深圳)


mingdai 发表于 2006-9-1 09:04 LINUX|编程 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

6楼: to 阿南:

你好

我们用的是上海JADE TECH的z228(ARM9核)开发板,自己裁剪出来的无线网络模块。还没出PCB
阅读(1084) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~