raytheman
Contributor
Contributor

Force Guest OS to Use 100Mbps/Full Duplex NIC

My service provider only provide 100Mbps/Full with no Auto-negotiate connection, therefore I have to make sure both host and guest are using 100Mbps/Full. While I know how to change it in the host, yet I am hitting some roadblock for CentOS, here is what I get.

# ethtool eth0

Settings for eth0:

Supported ports:

Supported link modes: 1000baseT/Full

Supports auto-negotiation: No

Advertised link modes: Not reported

Advertised auto-negotiation: No

Speed: 1000Mb/s

Duplex: Full

Port: Twisted Pair

PHYAD: 0

Transceiver: internal

Auto-negotiation: off

Link detected: yes

# ethtool -s eth0 speed 100 duplex full

Cannot set new settings: Operation not supported

not setting speed

not setting duplex

Since 100 duplex full is not even in the support list, I can't change it. How can I force the gues OS to use 100Mbps/Full Duplex NIC?

0 Kudos
6 Replies
weinstein5
Immortal
Immortal

It is not the Guest you will have to set 100 MB Full but the physical NICs in the ESX Server because it is to these NICs that the physical Infrastructure will communicate and this done through the VI Client

If you find this or any other answer useful please consider awarding points by marking the answer correct or helpful

If you find this or any other answer useful please consider awarding points by marking the answer correct or helpful
RParker
Immortal
Immortal

The VM nic doesn't actually negotiate anything. It's configured by the vSwitch on the ESX host. So as along as the ESX pNIC connects to the switch, not matter what the vmNIC says in the guest, it's the correct speed. 1000 does not mean it's a Gig connection, the driver is basically a 'dummy' driver and it doesn't detect speed of the actual NIC, so there is no reason to force your VM to the correct speed, leave it on Auto.

raytheman
Contributor
Contributor

OK, then there is something wrong here, I have set the host to 100Mbps/Full Duplex, and I don't have issue with the Windows 2003 OS. Yet the connection of my CentOS guest seems very unstable, almost unusable, and I have checked everything else, routing, dns, etc.., for me it really looks like a speed mis-match issue.

0 Kudos
anatanotenshi
Contributor
Contributor

Accordingly of what you're saying I have a problem with performance. My host tells me I'm working at 100MB while the VMs tell me 1GB. What should I do to correct that if I'm in autonegociate an the network is configured to 1GB actually.

Sorry about the change of subject.

0 Kudos
raytheman
Contributor
Contributor

Login to VI client, Configuration, Networking, Properties, Network Adapters, and change the speed of you NIC to 1000 Full, then you should be fine.

0 Kudos
RParker
Immortal
Immortal

, for me it really looks like a speed mis-match issue.

Well speed is real hard to examine. I wouldn't say that was the cause. A protocol or other services (like IPv6, QoS, UDP) may not like the fact that the network speed is 100 or 1000. If you can identify what protocols the Cent OS needs, maybe you can turn off some other services which are interrupting the network traffic, and that may be the cause of your problem. This seems more of a conflict or interruption application layer than a network speed topology issue.

0 Kudos