Linux
英特爾 e1000e 卡在 10Mbps
這是一個全新的 SuperMicro X9SCL-F,帶有 Intel 82579LM 適配器和全新安裝的 CentOS 6.2 和 cPanel。
我被困在10MBPS,我已經嘗試了一切。我也安裝了 Intel 最新的 1.95 驅動程序,這似乎已經為其他人解決了這個問題。
這些命令什麼都不做。
ethtool -s eth1 speed 100 duplex half ethtool -s eth1 speed 1000 duplex half ethtool -s eth1 speed 100 duplex full ethtool -s eth1 speed 1000 duplex full
他們在 dmesg 中產生了這個結果:
[ 1081.662365] e1000e 0000:02:00.0: eth1: Reset adapter [ 1084.298376] e1000e: eth1 NIC Link is Up 10 Mbps Half Duplex, Flow Control: None [ 1084.298443] e1000e 0000:02:00.0: eth1: Autonegotiated half duplex but link partner cannot autoneg. Try forcing full duplex if link gets many collisions. [ 1084.298446] e1000e 0000:02:00.0: eth1: 10/100 speed: disabling TSO
這個命令讓我斷網
ethtool -s eth1 speed ... autoneg off
輸出
ethtool eth1
Settings for eth1: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised pause frame use: No Advertised auto-negotiation: Yes Speed: 10Mb/s Duplex: Half Port: Twisted Pair PHYAD: 1 Transceiver: internal Auto-negotiation: on MDI-X: off Supports Wake-on: pumbag Wake-on: g Current message level: 0x00000001 (1) Link detected: yes
ethtool -i eth1
driver: e1000e version: 1.9.5-NAPI firmware-version: 2.1-2 bus-info: 0000:02:00.0
完整的dmesg:
[ 2.332156] e1000e: Intel(R) PRO/1000 Network Driver - 1.2.20-k2 [ 2.332159] e1000e: Copyright (c) 1999 - 2010 Intel Corporation. [ 2.332209] e1000e 0000:00:19.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20 [ 2.332225] e1000e 0000:00:19.0: setting latency timer to 64 [ 2.332508] e1000e 0000:00:19.0: irq 31 for MSI/MSI-X [ 2.573664] e1000e 0000:00:19.0: eth0: (PCI Express:2.5GB/s:Width x1) 00:25:90:57:38:e5 [ 2.573668] e1000e 0000:00:19.0: eth0: Intel(R) PRO/1000 Network Connection [ 2.573718] e1000e 0000:00:19.0: eth0: MAC: 10, PHY: 11, PBA No: FFFFFF-0FF [ 2.573777] e1000e 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 [ 2.573802] e1000e 0000:02:00.0: setting latency timer to 64 [ 2.574078] e1000e 0000:02:00.0: irq 32 for MSI/MSI-X [ 2.574083] e1000e 0000:02:00.0: irq 33 for MSI/MSI-X [ 2.574088] e1000e 0000:02:00.0: irq 34 for MSI/MSI-X [ 2.574297] e1000e 0000:02:00.0: Disabling ASPM L0s [ 2.657292] e1000e 0000:02:00.0: eth1: (PCI Express:2.5GB/s:Width x1) 00:25:90:57:38:e4 [ 2.657296] e1000e 0000:02:00.0: eth1: Intel(R) PRO/1000 Network Connection [ 2.657380] e1000e 0000:02:00.0: eth1: MAC: 3, PHY: 8, PBA No: FFFFFF-0FF [ 14.181499] e1000e: eth1 NIC Link is Up 10 Mbps Half Duplex, Flow Control: None [ 14.181565] e1000e 0000:02:00.0: eth1: Autonegotiated half duplex but link partner cannot autoneg. Try forcing full duplex if link gets many collisions. [ 14.181567] e1000e 0000:02:00.0: eth1: 10/100 speed: disabling TSO [ 476.773721] e1000e 0000:02:00.0: PCI INT A disabled [ 476.789823] e1000e 0000:00:19.0: PCI INT A disabled [ 476.935605] e1000e: Intel(R) PRO/1000 Network Driver - 1.9.5-NAPI [ 476.935608] e1000e: Copyright(c) 1999 - 2011 Intel Corporation. [ 476.935639] e1000e 0000:00:19.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20 [ 476.935651] e1000e 0000:00:19.0: setting latency timer to 64 [ 477.008135] e1000e 0000:00:19.0: irq 31 for MSI/MSI-X [ 477.184223] e1000e 0000:00:19.0: eth0: (PCI Express:2.5GT/s:Width x1) 00:25:90:57:38:e5 [ 477.184227] e1000e 0000:00:19.0: eth0: Intel(R) PRO/1000 Network Connection [ 477.184298] e1000e 0000:00:19.0: eth0: MAC: 11, PHY: 11, PBA No: FFFFFF-0FF [ 477.184309] e1000e 0000:02:00.0: Disabling ASPM L0s [ 477.184393] e1000e 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 [ 477.184417] e1000e 0000:02:00.0: setting latency timer to 64 [ 477.184836] e1000e 0000:02:00.0: irq 32 for MSI/MSI-X [ 477.184839] e1000e 0000:02:00.0: irq 33 for MSI/MSI-X [ 477.184841] e1000e 0000:02:00.0: irq 34 for MSI/MSI-X [ 477.334438] e1000e 0000:00:19.0: irq 31 for MSI/MSI-X [ 477.385281] e1000e 0000:00:19.0: irq 31 for MSI/MSI-X [ 477.386305] e1000e 0000:02:00.0: eth1: (PCI Express:2.5GT/s:Width x1) 00:25:90:57:38:e4 [ 477.386308] e1000e 0000:02:00.0: eth1: Intel(R) PRO/1000 Network Connection [ 477.386458] e1000e 0000:02:00.0: eth1: MAC: 4, PHY: 8, PBA No: FFFFFF-0FF
卡是以下之一(不確定是哪個):
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 05) Subsystem: Super Micro Computer Inc Device 1502 Flags: bus master, fast devsel, latency 0, IRQ 31 Memory at fba00000 (32-bit, non-prefetchable) [size=128K] Memory at fba24000 (32-bit, non-prefetchable) [size=4K] I/O ports at f020 [size=32] Capabilities: [c8] Power Management version 2 Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+ Capabilities: [e0] PCI Advanced Features Kernel driver in use: e1000e Kernel modules: e1000e 02:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection Subsystem: Super Micro Computer Inc Device 0000 Flags: bus master, fast devsel, latency 0, IRQ 16 Memory at fb900000 (32-bit, non-prefetchable) [size=128K] I/O ports at e000 [size=32] Memory at fb920000 (32-bit, non-prefetchable) [size=16K] Capabilities: [c8] Power Management version 2 Capabilities: [d0] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [e0] Express Endpoint, MSI 00 Capabilities: [a0] MSI-X: Enable+ Count=5 Masked- Capabilities: [100] Advanced Error Reporting Capabilities: [140] Device Serial Number 00-25-90-ff-ff-57-38-e4 Kernel driver in use: e1000e Kernel modules: e1000e
由於您似乎已經花費了大量時間來驗證您的設備是否正常工作,因此可能是時候退後一步並執行其中一項非常基本的、應該是顯而易見的檢查。
仔細檢查您連接的交換機/集線器/設備是否實際上支持大於 10mb 的連結速度,並且它沒有任何配置將其限制為僅 10mb。
我看到您提到了自動協商,但是如果您關閉自動協商,則需要在雙方(伺服器端和交換機端)都這樣做。通常,如果卡在自動協商時遇到問題,可能是由於外部干擾來源。正如 Squidly 所說,您的電纜可能不好。所以,我給你的建議是,按以下順序:
- 嘗試在兩邊都關閉自動協商,手動將鏈路的兩邊提高到 1000/Full。
- 如果做不到這一點,請嘗試用新的或已知良好的電纜更換電纜。
- 您完全有可能只是有一個壞的 NIC,這是眾所周知的。