Linux

網卡正在接收,但根本不傳輸?

  • May 26, 2010

我正在嘗試在客戶站點的機器上遠端解決一個非常奇怪的問題。機器是Dell PowerEdge 1950。機器的網卡是雙口板載Broadcom NetXtreme II BCM5708千兆乙太網,使用bnx2驅動。

主介面 eth0執行良好,實際上是我使用 ssh 的方式。

但是,輔助介面 eth1 不傳輸。我可以在 ifconfig 輸出中看到這一點,例如,TX 欄位始終為 0。但是,它正在接收,並且 tcpdump 顯示來自另一端 ISP 網關的 ARP 請求。

該介面物理連接到由 ISP 配置的 Siemens BSTU4 調製解調器。鏈路按照 ISP 的要求正確設置為 10MBps 和全雙工,無需協商。配置了一個小/30子網。為了匿名起見,假設機器是3.3.3.2/30和 ISP 的網關.1。該機器沒有任何防火牆設置。

即使執行類似的東西arping -I eth1 3.3.3.1,並同時執行 tcpdump,也不會顯示介面上傳輸的任何流量。(但是對方一直在穩定的發送ARP請求,只能看到這些了。)

這可能是什麼原因造成的?


這是一些匿名的輸出,希望對您有所幫助:

$ 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:  Not reported
   Advertised auto-negotiation: No
   Speed: 10Mb/s
   Duplex: Full
   Port: Twisted Pair
   PHYAD: 1
   Transceiver: internal
   Auto-negotiation: off
   Supports Wake-on: d
   Wake-on: d
   Link detected: yes

$ ip link show eth1
3: eth1: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
   link/ether 00:15:c5:xx:xx:xx brd ff:ff:ff:ff:ff:ff

$ ip -4 addr show eth1
3: eth1: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
   inet 3.3.3.2/30 brd 3.3.3.3 scope global eth1

$ ip -4 route show match 3.3.3.0/30
3.3.3.0/30 dev eth1  proto kernel  scope link  src 3.3.3.2
default via 10.0.0.5 dev eth0 

首先要檢查:可能的硬體問題。您是否使用已知良好的電纜?再次檢查。

當您將 RG45 插入 LAN 測試儀時,您能從 RG45 中得到什麼嗎?TX 引線上的 O 型示波器?

如果出現硬體故障,您將花費大量時間尋找軟體配置問題,卻一無所獲。

由於您禁用了自動協商,因此不會有自動Auto-MDIX,因此您可能需要使用交叉電纜。但是,我認為在這種情況下傳輸仍然會上升。

引用自:https://serverfault.com/questions/145381