Neste artigo, vou mostrar como usar ettool comando no Linux. Vou usar o Debian 9 Stretch para a demonstração. Mas qualquer distribuição Linux moderna deve funcionar. Vamos começar.
Verificando a disponibilidade do ethtool:
Na maioria dos casos, ettool já deve estar instalado na sua distribuição Linux favorita. Você pode verificar se ettool já está instalado com o seguinte comando:
$ sudo ethtool --versionComo você pode ver, ettool 4.8 está instalado na minha máquina Debian 9 Stretch.
Se você vir um erro, então ettool pode não estar instalado no seu computador. Você pode instalar ettool muito facilmente em sua distribuição Linux favorita. Eu vou te mostrar como instalar ettool no Ubuntu, Debian, RHEL 7 e CentOS 7 nas próximas seções deste artigo abaixo.
Instalando o ethtool no Ubuntu e Debian:
ettool está disponível no repositório de pacotes oficial do Ubuntu e Debian. Então é realmente fácil de instalar.
Primeiro, atualize o cache do repositório de pacotes APT com o seguinte comando:
$ sudo apt updateAgora, instale ettool com o seguinte comando:
$ sudo apt install ethtool -yInstalando o ethtool no CentOS 7 e RHEL 7:
ettool está disponível no repositório oficial de pacotes do CentOS 7 e RHEL 7. Você pode instalar muito facilmente.
Primeiro, atualize o cache YUM com o seguinte comando:
$ sudo yum makecacheFinalmente, instale ettool com o seguinte comando:
$ sudo yum install ethtool -yExibindo informações da placa de interface de rede com ethtool:
Você pode exibir informações sobre as placas de interface de rede (NICs) conectadas ao seu computador com ettool Utilitário. Para fazer isso, você precisa do nome da interface de rede de sua placa de interface de rede (NIC).
No Linux, cada placa de interface de rede (NIC) recebe nomes exclusivos, como eth0, ens32 etc.
Primeiro, encontre os nomes atribuídos de todas as interfaces de rede disponíveis do seu computador, com o seguinte comando:
$ sudo ip link showComo você pode ver, tenho apenas duas placas de interface de rede (NICs) conectadas ao meu computador. Se você tiver mais, deve aparecer aqui. Os nomes atribuídos às minhas interfaces de rede são ens33 e enx00e04c42a3fe respectivamente. O seu deveria ser diferente. Mas tome nota disso, pois você vai precisar de agora em diante.
Agora, para exibir mais informações sobre uma placa de interface de rede (digamos enx00e04c42a3fe) com ettool, execute o seguinte comando:
$ sudo ethtool enx00e04c42a3feComo você pode ver, muitas informações sobre a placa de interface de rede enx00e04c42a3fe está listado aqui.
Por exemplo, os modos de link suportados de sua NIC são exibidos aqui.
O modo duplex usado atualmente e a velocidade são exibidos aqui também. Como você pode ver, ele está conectado em modo full duplex a uma velocidade de 100 Mbps.
Você também pode descobrir se o seu NIC oferece suporte à negociação automática aqui. Se a negociação automática estiver habilitada, seu NIC escolhe um modo de link aleatório de um de seus modos de link com suporte, dependendo do roteador ou porta do switch ao qual está conectado.
Verificando qual driver sua NIC está usando:
Você também pode verificar qual driver sua NIC está usando com ettool comando.
Por exemplo, para verificar o driver usado por uma de suas NIC (digamos enx00e04c42a3fe), corre ettool comando da seguinte forma:
$ sudo ethtool -i enx00e04c42a3feComo você pode ver, meu enx00e04c42a3fe NIC está usando o driver Realtek r8152 versão 1.08.7. O seu pode ser diferente.
Estatísticas de uso da Rede de Display com ethtool:
Você pode descobrir quantos pacotes o NIC enviou (Tx ou transmitido) e recebeu (Rx ou recebido) usando ettool. Você também pode descobrir quantos desses pacotes colidiram, erros de transmissão (Tx) e erros de receptor (Rx) e muitos mais.
Para exibir sua NIC (digamos enx00e04c42a3fe) estatísticas, executar ettool do seguinte modo:
$ sudo ethtool -S enx00e04c42a3feComo você pode ver, muitos dados estatísticos em sua NIC são exibidos.
Fazendo sua NIC piscar usando o ethtool:
Fazer seu NIC piscar pode parecer inútil. Mas imagine um caso em que seu computador tem muitas interfaces de rede. Como você saberia qual porta está atribuída a qual nome de interface de rede? Bem, basta piscar cada interface de rede e descobrir por si mesmo usando ettool. Simples!
Para piscar uma interface de rede (digamos enx00e04c42a3fe) com ettool, corre ettool do seguinte modo:
$ sudo ethtool -p enx00e04c42a3feEste recurso pode não estar disponível em sua placa NIC. Verifique o manual da sua placa NIC para obter mais informações sobre este.
Minha placa NIC não tem esse recurso, então tudo que recebo é um erro.
Configurando a velocidade e os modos em NICs manualmente:
Às vezes, a negociação automática pode falhar e sua NIC pode usar a velocidade e o modo incorretos. Você pode corrigir isso facilmente com ettool.
Primeiro, verifique quais velocidades e modos são suportados em sua NIC (digamos enx00e04c42a3fe) com o seguinte comando:
$ sudo ethtool enx00e04c42a3feVocê pode encontrar os modos de link suportados de sua NIC no Modos de link suportados seção e seus roteadores ou switches anunciados modos de link em Modos de link anunciados pelo parceiro de link seção como você pode ver na seção marcada da imagem abaixo. Minha NIC e roteador são compatíveis com 10baseT e 100baseT no modo Half e Full duplex.
Atualmente, meu NIC enx00e04c42a3fe está funcionando em modo full duplex a 100 Mbps de velocidade.
Para alterá-lo, digamos no modo Full duplex na velocidade de 10 Mbps, execute ettool do seguinte modo:
$ sudo ethtool -s enx00e04c42a3fe velocidade 10 duplex full autoneg desligadaComo você pode ver, a velocidade foi alterada para 10 Mbps e o modo duplex está cheio. Além disso, a negociação automática está desativada.
Obtendo ajuda sobre o ethtool:
O ettool comando tem muitas opções. Não é possível mostrar como todas as opções funcionam neste artigo devido ao escopo e limitação de hardware do meu computador.
Mas você deve ser capaz de encontrar o que precisa na página de manual do ettool, que você pode acessar com o seguinte comando:
$ man ethtool
Então, é assim que você usa ettool no Linux. Obrigado por ler este artigo.