Sous AIX, je maitrise bien, les changements de vitesses d'une carte réseau. C'est une opération fréquente de forcer un carte réseau en 100 full duplex ou en auto-négociation. J'ai eu à le faire sous linux. Il y a de plus en plus de linux en entreprise.
J'ai trouvé les outils suivants sous linux:
Pour visualiser la configuration actuelle de la carte réseau on peut utiliser ethtool
ethtool eth0
Settings for eth0:
Supported ports: [ MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: Not reported
Advertised auto-negotiation: No
Speed: 100Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: off
Supports Wake-on: g
Wake-on: d
Current message level: 0x000000ff (255)
Link detected: yes
ou mii-tool
mii-tool eth0: 100 Mbit, full duplex, link ok
Pour modifier la vitesse on utilise ethtool comme ceci pour passer en autonégociation
ethtool -s eth0 speed 1000 duplex full autoneg on
Ou comme ceci pour forcer le 100 full duplex:
ethtool -s eth0 speed 100 duplex full autoneg off
On peut vérifier la vitesse:
ethtool eth0
Settings for eth0:
Supported ports: [ MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: g
Wake-on: d
Current message level: 0x000000ff (255)
Link detected: yes
Pour rendre la modification permanente, il faut éditer le fichier /etc/sysconfig/network-scripts/ifcfg-eth0 sous redhat et modifier les paramètres pour supprimer ou ajouter la ligne contenant ETHTOOL_OPTS
# Broadcom Corporation|NetXtreme BCM5703 Gigabit Ethernet DEVICE=eth0 BOOTPROTO=static HWADDR=00:0F:20:F8:EF:A0 IPADDR=170.247.2.42 NETMASK=255.255.255.0 ONBOOT=yes TYPE=Ethernet ETHTOOL_OPTS="speed 100 duplex full autoneg yes"
Sur un système à base debian (et ubuntu), on edite le fichier /etc/network/interfaces et dans la section correspondant à votre carte réseau et on ajoute la ligne
up ethtool -s $IFACE speed 100 duplex full autoneg off
Les modifications seront prises au prochain reboot ou au prochain /etc/init.d/network rest.