Intel e1000e网卡在Linux下的安装

在新版本的Linux下, 已经包含了e1000e网卡的驱动, 因此驱动自己已经不在称为问题,但一个很奇怪的现象, 在于这个网卡在DHCP环境中, 没法得到IP地址。但这个网卡采用static ip又是能够工做的。
     咱们能够依次检查以下
     1, lspci能够看到系统的网卡类型。
     2,检查lsmod或者kernel, 能够发现相应的e1000e模块已经安装。
     3,经过ifconfig能够观察到对应的网卡状态/信息,除了没有ip address,别的都起来了。
     4,检查dhcp的日志信息
Feb 22 04:03:48 triceratops kernel: [24233.334381] e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX
Feb 22 04:03:48 triceratops kernel: [24233.334535] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Feb 22 04:03:48 triceratops dhcpcd[8091]: eth0: carrier acquired
Feb 22 04:03:48 triceratops dhcpcd[8091]: eth0: rebinding lease of 71.195.255.75
Feb 22 04:03:48 triceratops dhcpcd[8091]: eth0: acknowledged 71.195.255.75 from 68.87.66.21
Feb 22 04:03:48 triceratops dhcpcd[8091]: eth0: checking for 71.195.255.75
Feb 22 04:03:53 triceratops dhcpcd[8091]: eth0: leased 71.195.255.75 for 320676 seconds
Feb 22 04:03:53 triceratops kernel: [24238.491916] e1000e: eth0 changing MTU from 1500 to 576
Feb 22 04:03:53 triceratops dhcpcd: eth0: MTU set to 576
Feb 22 04:03:53 triceratops dhcpcd[8091]: eth0: carrier lost
Feb 22 04:03:53 triceratops dhcpcd: eth0: MTU restored to 1500
Feb 22 04:03:53 triceratops kernel: [24238.581934] e1000e: eth0 changing MTU from 576 to 1500
        能够观察到DHCP服务器已经分发了对应的IP地址, 可是没有被本地系统所接收。

      问题到这里, 就能够很清楚了, 在于DHCP服务器和nic driver在协商MTU的时候,不能达成一致。致使IP地址分配失败。这个问题多是
      1) 上游的DHCP想设置MTU为576. 也许是DHCP服务器的问题.
      2) NIC的驱动有问题,在设置MTU时没法bring link.

     解决方案: 修改/etc/dhcpcd.conf, 将其中的option interface_mtu注释掉。
         强制dhcpcd忽略来自DHCP服务器的MTU设定就能够了。

    注:  之因此把这个问题写出来, 是由于发现Intel e1000e的网卡驱动, 在不少Linux下,都存在这个问题,而这个问题经过从新编译驱动并没有法解决。


    另外,该问题出现的几个可能缘由
    1, 在ESX中克隆出的虚拟机, 也有可能出现启动时,找不到网卡的状况, 一般这种状况,是因为eth0设备所装载的配置与读取默认配置的Mac地址不一致,致使加载网卡失败。
    最直接的作法:rm /etc/udev/rules.d/70-persistent-net.rules,重启虚拟机,配置网络,搞定。一切都让udev本身来处理。


dhcpcd的安装
emerge dhcpcd;  rc-update add dhcpcd default

要确保系统已经安装并运行了syslog
emerge syslog-ng
rc-update add syslog-ng default

network的配置
echo "config_eth0=dhcp" >> /etc/conf.d/net

Reference:    
Linux* e1000e Base Driver overview and installation
http://www.intel.com/support/cn/mt/mt_win.htm服务器

相关文章
相关标签/搜索