一般情况下,网卡会与交换机协商使用最高的速度进行连接,但是有些交换机相对较差的情况下,网卡会被限在 10M 或半双工下动作。即有可能出现以下的情况:

1、连接速度慢(LINUX / FREEBSD)
2、可以 PING 通自己,但 PING 不通外部机器(特别是 SOLARIS)

为避免这些问题的出现,可以强行将网卡的速度和工作模式设为 100M 全双工。


在 LINUX 下,如果使用 ifconfig 会出现错误使用:

# ifconfig eth0 media 100baseTx
port: SIOCSIFMAP: Operation not supported


此时,应该使用以下命令:

# mii-tool -F 100baseTx-FD eth0

或者在设定之前可以用以下命令查看网卡的当前情况:

# mii-tool eth0


-----

而在 FreeBSD 下面,可以直接使用 ifconfig 进行设置:

# ifconfig fxp0 media 100BaseTX mediaopt full-duplex


或直接将配置写入 /etc/rc.conf 里面,下次启动时也会生效。

ifconfig_fxp0="inet x.x.x.x netmask x.x.x.x media 100BaseTX mediaopt full-duplex"


-----

在 Solaris 下面,如果网卡不运行在全双工模式下,会出现可以 PING 通自己,而不通 PING 通别人的情况出现,而且设置会比较麻烦,SPARC 和 X86 架构下的操作也不一样。

SPARC 架构平台: