免费注册 查看新帖 |

Chinaunix

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

RHEL5上安装broadcom bcm4306无线网卡成功! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-23 15:21 |只看该作者 |倒序浏览
Broadcom 4306 无线网卡是一款广泛用于笔记本网卡。

可惜为了这块网卡安装折腾了10多个小时!!下面是安装过程。

操作系统:Red Hat Enterprise Linux Server 5 update 3 for i386
#uname -r
2.6.18-128.el5

网卡:
#lspci
02:03.0 Network controller:Broadcom Corporstion BCM4306 802.11b/g Wireless LAN Controller (rev 03)
#lspci -n | grep 14e4
02:03.0 0280: 14e4:4320 (rev 03)

http://sourceforge.net/project/s ... p;release_id=562382
在这个地址下载ndiswrapper的源代码(注意,必须是源代码,结合你的linux内核代码编译才行,否则驱动是挂不上去的),目前最新的stable版本应该是1.51,支持smp多核的,基本使用方法还是没变。

下载完毕后,就是解压缩和编译了,注意这里必须要有root权限:
#tar -zxf ndiswrapper-1.51.tar.gz
#mv ndiswrapper-1.51 /usr/local/ndiswrapper
#cd /usr/local/ndiswrapper
#make
#make install

这些结束以后,就可以先实验一下输入:
#ndiswrapper [回车]
会输出一堆,常规的ndiswrapper的help提示,这时候,你的ndiswrapper应该已经装上了。

然后下载我在windows里导出的驱动程序文件:
关于如何从windows下导出驱动程序文件请参考我的文章《D-Link DWL-G122无线网卡的linux系统下安装使用方法》

#wget http://mjwdj.vicp.net/downloads/software2/bcm4306.zip
#unzip bcm4306.zip
#rm -f bcm4306.zip
#mkdir /usr/local/wlan_drv/
#mv * /usr/local/wlan_drv/
#cd /usr/local/wlan_drv/
#ndiswrapper -i oem3.inf

这就是安装了,然后确保已经装上了,可以用下面的命令看一下:
#ndiswrapper -l [回车]
xxxxx : driver installed
只要看到这个driver installed,就代表已经装上了。

用下面的命令确认设备的驱动安装成功:
#ndiswrapper -l

这时候,应该可以看到如下内容:
xxxxxx: driver installed
(device id xxxxxxx) hardware present
注意这里的hardware present是至关重要的,这个有了才代表驱动已经识别出硬件来了。

好了,然后就是常规的操作了,设定ip,设定essid,设定其wep,设定路由等等,不会的朋友请参考其它
的文档,我就懒得写了。


###########################################################################
我把我用的一个批量处理的脚本直接贴上来,方便大家查看:
#!/bin/sh
modprobe ndiswrapper
ifconfig eth0 down
iwconfig eth1 essid "mywireless"
iwconfig eth1 key c2c4-5399-c894-b9fc-34eb-ed9b-3f open
ifconfig eht1 192.9.201.4 netmask 255.255.255.0
ifconfig eth1 up
route add default gw 192.9.201.1 eth1
echo "done."
exit 0
把以上内容存为文件/usr/sbin/wifi_up
执行命令,使该文件可以执行:
#chmod 755 /usr/sbin/wifi_up
执行下面命令,使系统启动时自动启动无线网卡:
echo "/usr/sbin/wifi_up" >> /etc/rc.d/rc.local

eth0是我机器上自带的以太网卡,eth1是我的broadcom bcm4306网卡(可能应机器不同网卡名称可能不同,用ifconfig或iwconfig命令查看)

mywireless是SSID
c2c4-5399-c894-b9fc-34eb-ed9b-3f是16进制128位WEP密码

路由器无线网络设定:
安全方式:wep
Authentication Type:Open System
Wep加密:128bit
加密方式:HEX

需要修改你自己的无线路由器的essid和wep加密键值,好了,重启机器。应该就可以使用了。

###########################################################################

貌似你的无限网卡还不能联网吧?!

执行下面命令报错:
#ifconfig eht1 192.9.201.4 netmask 255.255.255.0
SIOCSIFFLAGS: No such file or directory
Failed to bring up eth1.

哈哈这就是困扰我10多个小时的问题!

原因:
Linux 2.6.XX的内核已经包含bcm43xx的模块,但该模块不能驱动好像不能用,反正我是不会用啦。看到网上的文章说在2.6.24以上的内核版本才支持bcm43xx的一部分无线网卡,而且要手工加上broadcom的firmware才能使用,安装firmware的版本应内核版本不同也有所不同。
RHEL5在启动的时候就加载了该模块,在配置IP的时候系统是调用了Linux内核自带的bcm43xx模块,自然就不能成功了。

解决方法(太简单了):

卸载内核的bcm43xx模块!
#modprobe -r bcm43xx
再执行上面的脚本即可。

###########################################################################

完善篇

让内核在启动的时候直接加载ndiswrapper提供的驱动:

编辑文件/etc/modprobe.conf:
将如下行:
alias eth1 bcm43xx
改为:
alias eth1 ndiswrapper

#sed -i 's/bcm43xx/ndiswrapper/' /etc/modprobe.conf

脚本改为:
#!/bin/sh
iwconfig eth1 essid "mywireless"
iwconfig eth1 key c2c4-5399-c894-b9fc-34eb-ed9b-3f open
ifconfig eht1 192.9.201.4 netmask 255.255.255.0
ifconfig eth1 up
route add default gw 192.9.201.1 eth1
echo "done."
exit 0

如果在gnome的网络配置里设定无线网卡的SSID,IP,网关和掩码并设定开机启动,那么可以简化成这样(因为key还没法在gnome里设定):
#!/bin/sh
iwconfig eth1 key c2c4-5399-c894-b9fc-34eb-ed9b-3f open

或者直接在rc.local文件里设定:
echo 'iwconfig eth1 key c2c4-5399-c894-b9fc-34eb-ed9b-3f open' >> /etc/rc.d/rc.local

重启主机,无线网络OK!

有问题请email:mjwdj80@hotmail.com

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
2 [报告]
发表于 2009-04-24 17:46 |只看该作者
我的笔记本也是需要使用bcm43xx驱动程序。编译内核源码时已经有了bcm43xx驱动。不过需要有firmware文件,才能顺利加载driver

论坛徽章:
0
3 [报告]
发表于 2009-04-24 22:04 |只看该作者
原帖由 Godbach 于 2009-4-24 17:46 发表
我的笔记本也是需要使用bcm43xx驱动程序。编译内核源码时已经有了bcm43xx驱动。不过需要有firmware文件,才能顺利加载driver



网上找了很多文章说要加载firmware,但我试了很久没成功,好像是需要2.6.24以上的内核。

我干脆卸载内核的bcm43xx模块,加载上ndiswrapper模块,相当方便!!

论坛徽章:
0
4 [报告]
发表于 2009-04-25 23:51 |只看该作者

回复 #1 mjwdj 的帖子

不错,写的很详细,谢谢lz的经验结晶。

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
5 [报告]
发表于 2009-04-26 22:32 |只看该作者
原帖由 mjwdj 于 2009-4-24 22:04 发表



网上找了很多文章说要加载firmware,但我试了很久没成功,好像是需要2.6.24以上的内核。

我干脆卸载内核的bcm43xx模块,加载上ndiswrapper模块,相当方便!!


恩,多谢LZ 提示。回头偶也试一把。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP