
Pelo que eu sei, o comando a seguir definiria a velocidade e o duplex anunciados pela negociação automática.
ethtool -s eth0 advertise 0x020
onde 0x020
indica 1000baseT Full
de acordo com o seguinte guia:
advertise N
Sets the speed and duplex advertised by autonegotiation. The
argument is a hexadecimal value using one or a combination of
the following values:
0x001 10baseT Half
0x002 10baseT Full
0x004 100baseT Half
0x008 100baseT Full
0x010 1000baseT Half (not supported by IEEE standards)
0x020 1000baseT Full
O comando que apliquei é 1000baseT Full
apenas anunciado. Gostaria de saber como configuro o servidor para anunciar vários modos de link de 1000baseT Full 100baseT Full 100baseT Half
uma só vez.
Tentei aplicar o mesmo comando para os modos de link desejados, um por um, mas sempre que o novo modo de link substitui o modo atual e não é adicionado a ele.
Também mencionei os modos de link hexacódigos consecutivamente como a seguir, mas ele retorna um erro.
ethtool -s eth0 advertise 0x020 0x008 0x004
ethtool: bad command line argument(s)
For more information run ethtool -h
Quando todos são anunciados, eles são exibidos na ethtool
saída assim:
ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Alguma ideia, por favor?
Responder1
Some os números. Observe aquilo:
0x001
é0b000000000001
,0x002
é0b000000000010
,0x004
é0b000000000100
,
e assim por diante, cada um deles representa um bit (flag) em algum registro, que armazena os modos habilitados. Você precisa apenas ativar todos os bits desejados.
No seu caso, 1000baseT Full
, 100baseT Full
e 100baseT Half
seria 0x020 + 0x008 + 0x004 = 0x02c
:
ethtool -s eth0 advertise 0x02c