Linux|系统管理|WEB开发

关注Linux,系统管理,WEB开发以及开源世界

奇怪的网卡现象

| Comments

联想昭阳Exxx笔记本,BCM4401 10/100自适应网卡,安装红旗桌面5。
默认加载驱动是bcm4401,IP地址采用DHCP模式,网络启动的时候,报错正常,但是网卡没有获得IP地址。dmesg看信息有NIC Link Down。但是系统任务栏上的网卡状态链路是好的,mii-tool也是link ok的。

执行ifup eth0,报告获取IP正常,但是还是没有得到IP地址,指定IP地址后,\ 也ping不通网络中的其他机器IP地址。看到驱动目录还有一个b44.ko驱动,加载之,报错,说IRQ错误。
想起之前也遇到过这类网卡的怪异问题,于是拿出noapic acpi=off大法,重新启动系统后,Link 已经UP了,但是是获不到IP地址,指定后也ping不通其他机器。dmesg消息中有“Flow control is off for TX and off for RX”。

询问Rachel,她建议我更新驱动,于是从官方站点下载其对应驱动,该驱动也是2006年的,看来不怎么新了。编译后,驱动模块是b44.ko。重新加载,效果依然。

没有想到平常百试百灵的acpi和noapic都不行了,看来这个问题不简单,艾,联想呀,在我的经历中,联想的机器我就没有顺利过。
在自信看dmesg信息,发现似乎是IRQ冲突的问题。主要是IRQ11,前面说找到了这样的设备,后面又说是空的,很是奇怪,实在没有办法,去BIOS里看看吧,在devices control里发现有LAN的信息也有VLAN的信息,为什么会有VLAN的信息呢,不管它,先disable再说。紧挨着的设备还有MODEM和1394,干脆全部DISABLE好了,保存后再进系统,哈哈,获得IP地址了。但是dmesg里“Flow control is off for TX and off for RX”的消息还是有,不过网络已经OK了,也能上网,只是这个网络获取IP地址有的奇怪,通常的情况下,ifup eth0,出现的信息,只要有done后,用ifconfig eth0看,肯定是能看到IP地址的,但是这个不是,大概延时2秒钟。不知原因。

那么到底是DISABLE哪个管用呢,还是这三个都需要DISABLE呢。于是开始了Rachel称之为的“折腾”,因为有三个选项,\ 再加上内核参数,所以一起有12种组合,折腾完后,得出的结论是必须把上面三个设备也就是MODEM,1394,VLAN都必须DISABLE,\同时需要增加noapic acpi=off的参数。

OK,折腾到此结束,谢谢各位!

Comments