我正在尝试远程修复客户站点上的一台机器上的一个非常奇怪的问题。该机器是 Dell PowerEdge 1950。该机器的 NIC 是双端口板载 Broadcom NetXtreme II BCM5708 千兆以太网,使用 bnx2 驱动程序。
主接口 eth0完美运行,实际上这就是我通过 ssh 登陆的方式。
但是,辅助接口 eth1 不是传输。例如,我可以在 ifconfig 输出中看到这一点,其中 TX 字段始终为 0。但是,它是接收,tcpdump 显示来自另一端 ISP 网关的 ARP 请求。
该接口物理连接到西门子 BSTU4 调制解调器,由 ISP 配置。链路正确设置为 10MBps 和全双工,无需协商,正如 ISP 所要求的那样。/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
答案1
首先要检查:可能是硬件问题。您使用的电缆是否已知良好?再检查一次。
当您将 RG45 插入 LAN 测试仪时,您能从中获得任何东西吗?TX 导线上的 O-scope?
如果存在硬件故障,您将花费大量时间寻找软件配置问题但却找不到任何东西。
答案2
由于您禁用了自动协商,因此不会自动自动MDIX因此,您可能需要使用交叉电缆。不过,我认为在这种情况下传输速度仍然会提高。
答案3
您是否尝试过“traceroute -i eth1 www.google.com”?也许存在路由问题。