Linux / Comando ethtool: consultar link, driver e estatísticas

O comando ethtool consulta informações da interface Ethernet, como velocidade do link, modo duplex, driver e contadores. Ele também permite alterar configurações, mas, para investigar uma conexão instável, comece pelas consultas: detectar um link não comprova que endereçamento IP, rotas, DNS ou uma aplicação estejam funcionando.

Os campos disponíveis dependem da placa de rede — NIC, de Network Interface Controller —, do driver, do kernel e da virtualização. Uma interface virtual pode apresentar valores que não correspondem à capacidade física do cabo ou da porta do computador hospedeiro.

Sintaxe e escolha da interface

ethtool [opções] interface

Troque interface pelo nome real do dispositivo. Consulte ethtool --version e man ethtool no sistema onde fará a consulta. Se o programa não estiver disponível, identifique o pacote da sua distribuição; uma verificação de sintaxe do shell não substitui a execução dessa ferramenta no Linux.

Use ip link show, explicado no guia do comando ip, para localizar os nomes. enp1s0 e eth0 são exemplos e podem nem existir no seu sistema. Confirme também o contexto: dentro de um contêiner, a interface visível não é necessariamente a placa física do hospedeiro.

Consultas de link, driver e estatísticas

Consultar o estado do link

ethtool enp1s0

Sem opção de alteração, o comando mostra as configurações atuais que o dispositivo fornece. Compare a velocidade e o duplex atuais com os modos suportados e anunciados, quando presentes. “Suportado” descreve uma capacidade; “anunciado” indica o que é oferecido na negociação; nenhum dos dois deve ser lido automaticamente como a velocidade atual.

A negociação automática permite aos participantes estabelecer parâmetros compatíveis. Um valor diferente do esperado merece comparação com a outra ponta, o cabo e a configuração; não é motivo suficiente para forçar uma velocidade. Campos ausentes ou desconhecidos também não demonstram, isoladamente, uma falha física.

Identificar o driver

ethtool -i enp1s0

Essa consulta identifica o driver associado. Dependendo do dispositivo e do suporte, aparecem versão do driver, firmware e informações do barramento. Firmware é o software do próprio equipamento. Registre os valores realmente informados; um campo vazio não autoriza inventar uma versão nem concluir que o firmware está atualizado. A opção -i consulta informações, sem atualizar o driver ou o firmware.

Ler contadores da interface

ethtool -S enp1s0

Sem selecionar grupos padronizados, -S solicita as estatísticas específicas da NIC e do driver. Nomes e cobertura variam entre fabricantes. Consulte a descrição do driver antes de atribuir o mesmo significado a contadores com nomes parecidos ou comparar diretamente máquinas diferentes.

Um contador de erros diferente de zero pode incluir ocorrências anteriores. Registre duas leituras, seus horários e as condições do teste para verificar se ele aumentou durante o problema. Se houve reinicialização, recarga do driver ou outra mudança entre as leituras, confirme se a referência continua comparável. Não some indiscriminadamente contadores de hardware e de software, nem trate todo descarte como prova de cabo defeituoso. A documentação de estatísticas de interfaces do kernel diferencia essas fontes.

Interpretar Speed, Duplex e Link detected

O exemplo abaixo mantém o nome alternativo eth0. Substitua-o pela interface que você identificou; ele não é sinônimo automático de enp1s0. O prefixo sudo só é pertinente quando a consulta exigir um privilégio que você tem autorização para usar. Muitas consultas são permitidas sem ele; não eleve privilégios apenas porque uma opção não é suportada.

sudo ethtool eth0

Trecho ilustrativo de saída, sem representar uma medição deste artigo:

Speed: 1000Mb/s
Duplex: Full
Link detected: yes
  • Speed: 1000Mb/s informa uma velocidade de link de 1.000 megabits por segundo. Não é uma medição da velocidade de download nem uma promessa de transferência útil nessa taxa.
  • Duplex: Full indica comunicação simultânea nos dois sentidos. Não significa dobrar a velocidade indicada para um download.
  • Link detected: yes indica que o driver informa um link ativo. Não valida endereço IP, gateway, resolução de nomes ou resposta da aplicação.

Nem todo campo é resultado de negociação em todo ambiente: configurações fixas, dispositivos virtuais e drivers diferentes mudam o significado do que é apresentado. A interface ethtool do kernel distingue modos suportados/anunciados, velocidade, duplex e estado do link. Analise esses dados em conjunto, sem transformar uma linha em um diagnóstico completo.

Se aparecer Link detected: no, confira a interface escolhida, a conexão física e a outra ponta conforme o ambiente. Se aparecer yes, continue pelas camadas seguintes. O estado administrativo e operacional no Linux também distingue habilitar uma interface de ela estar apta a transportar dados.

Opções de consulta e opção de alteração

Opção Finalidade e limite
-i Consulta informações do driver; os detalhes de firmware dependem do suporte.
-S Consulta estatísticas da NIC e do driver. Sem grupos explícitos, os nomes são específicos da implementação.
-k Consulta recursos como offload, a execução de certas tarefas de rede pelo dispositivo ou pelo sistema.
-a Consulta parâmetros de pausa do Ethernet, relacionados ao controle de fluxo no enlace.
-s Altera configurações de link, como velocidade, duplex e negociação automática. Pode interromper a conexão.

As letras maiúsculas e minúsculas importam: -S lê estatísticas, enquanto -s muda configurações. Do mesmo modo, -k consulta recursos e -K altera recursos; -a consulta pausa e -A altera seus parâmetros. Não substitua uma opção por outra para tentar contornar um erro de consulta.

Investigar sem perder o acesso remoto

  1. Identifique a interface usada pela conexão e registre seu nome, o contexto de execução e os valores atuais. Não escolha um dispositivo apenas por se chamar eth0.
  2. Leia link e driver e, se houver suporte, os contadores. Compare os valores com a porta do switch e com a ocorrência observada, mantendo a mesma referência entre leituras.
  3. Se o link estiver ativo, verifique separadamente endereço IP, rota, DNS e a aplicação. Falha de serviço não exige automaticamente mudar velocidade ou negociação.
  4. Se uma alteração for realmente necessária, planeje acesso alternativo e a restauração dos valores anteriores nos dois lados. Uma sessão remota pode cair antes de você conseguir desfazer a mudança.

Modificar velocidade, duplex ou negociação automática com -s pode derrubar o link. Não há um conjunto de valores universal que corrija todas as interfaces; confronte as capacidades e a política das duas pontas. A leitura com -i não justifica uma atualização de firmware como primeira tentativa de diagnóstico.

Na verificação deste artigo, o ethtool não estava disponível no Git Bash do Windows 11. Os quatro comandos de exemplo passaram apenas pela análise de sintaxe do Bash. Não houve consulta real a uma interface Linux, execução de sudo ou alteração de link; a saída de três linhas permanece ilustrativa.

Pergunta frequente

Link detected: yes significa que a rede está funcionando?

Significa que o driver informa um link ativo, físico ou virtual conforme o dispositivo. Endereço IP, rota, DNS e resposta do serviço precisam de verificações próprias. Mesmo uma velocidade de link correta não mede a taxa útil de uma transferência.

Referência das opções

O manual do projeto ethtool disponibilizado no man7 descreve as opções de consulta e alteração. Compare-o com o manual instalado e com a documentação do seu driver, pois a presença de uma opção no manual não garante suporte no dispositivo.