Como verificar a velocidade de uma interface de rede no Linux

LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar a velocidade de uma interface de rede no Linux. Exploraremos três métodos comuns para alcançar este objetivo.

Primeiramente, você usará o comando ethtool, um utilitário poderoso para consultar e controlar as configurações de rede. Em seguida, você aprenderá como identificar sua interface de rede usando o comando ip link show. Por fim, demonstraremos como inspecionar a velocidade da interface de rede examinando o conteúdo do diretório /sys/class/net.

Verificar a velocidade com ethtool

Nesta etapa, aprenderemos como verificar a velocidade da sua interface de rede usando o comando ethtool. ethtool é um utilitário de linha de comando para consultar e controlar as configurações do driver de rede e do hardware.

Primeiro, vamos identificar sua interface de rede. Na maioria dos ambientes Linux, a interface de rede primária é frequentemente chamada de eth0 ou algo semelhante como enpXsY. Você geralmente pode encontrar o nome observando a saída do comando ip link show, que exploraremos na próxima etapa. Por enquanto, vamos supor que sua interface se chama eth0.

Para verificar a velocidade da interface eth0, abra seu terminal e digite o seguinte comando:

sudo ethtool eth0

Pressione Enter.

Você verá uma saída semelhante a esta:

Settings for eth0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Advertised pause frame use: No
        Advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        MDI-X: Unknown
        Supports Wake-on: d
        Wake-on: d
        Current message level: 0x00000007 (7)
                               drv probe link
        Link detected: yes

Procure a linha que começa com Speed:. Esta linha informa a velocidade atual da sua conexão de rede. No exemplo acima, a velocidade é 1000Mb/s.

Se você receber um erro como command not found, significa que o ethtool não está instalado. Você pode instalá-lo usando o gerenciador de pacotes:

sudo apt update
sudo apt install ethtool -y

Após a instalação, tente o comando sudo ethtool eth0 novamente.

Lembre-se de substituir eth0 pelo nome real da sua interface de rede, caso seja diferente.

Clique em Continuar para prosseguir para a próxima etapa.

Na etapa anterior, usamos ethtool para verificar a velocidade da rede, assumindo que o nome da interface era eth0. No entanto, os nomes das interfaces de rede podem variar. Nesta etapa, usaremos o comando ip link show para listar todas as interfaces de rede e verificar seu status.

O comando ip é um utilitário poderoso para configuração de rede no Linux. O objeto link é usado para gerenciar interfaces de rede, e a ação show exibe informações sobre elas.

Abra seu terminal e digite o seguinte comando:

ip link show

Pressione Enter.

Você verá uma saída semelhante a esta, listando suas interfaces de rede:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff

Nesta saída:

  • lo é a interface loopback, usada para comunicação dentro da mesma máquina.
  • eth0 é provavelmente sua interface de rede primária conectada à rede externa. O nome pode ser diferente em outros ambientes (por exemplo, enp3s0).
  • <BROADCAST,MULTICAST,UP,LOWER_UP> indica o estado e as capacidades da interface. UP significa que a interface está ativa.
  • mtu é a Unidade Máxima de Transmissão (Maximum Transmission Unit).
  • state UP confirma que a interface está operacional.

Identifique o nome da sua interface de rede primária na saída. Geralmente é aquela que está UP e não lo. No nosso ambiente LabEx, é eth0.

Agora você sabe como encontrar o nome correto da interface de rede, o que é crucial para usar comandos como ethtool.

Clique em Continuar para prosseguir.

Inspecionar a velocidade em /sys/class/net

Além de usar comandos como ethtool, você também pode encontrar informações sobre as interfaces de rede diretamente no sistema de arquivos Linux, especificamente dentro do diretório /sys. O sistema de arquivos /sys fornece uma interface para as estruturas de dados do kernel.

As informações da interface de rede geralmente estão localizadas em /sys/class/net/. Dentro deste diretório, você encontrará subdiretórios nomeados após cada interface de rede em seu sistema (por exemplo, eth0, lo).

Para encontrar as informações de velocidade da sua interface primária (que identificamos como eth0 na etapa anterior), você pode olhar dentro do arquivo /sys/class/net/eth0/speed.

Abra seu terminal e use o comando cat para visualizar o conteúdo deste arquivo:

cat /sys/class/net/eth0/speed

Pressione Enter.

Você deve ver um único número como saída, representando a velocidade da conexão em megabits por segundo (Mb/s).

1000

Esta saída confirma que a velocidade da interface eth0 é 1000 Mb/s, correspondendo às informações que vimos com ethtool.

Este método de verificar a velocidade lendo um arquivo em /sys é útil porque não requer a instalação de nenhuma ferramenta extra como ethtool. É uma maneira direta de acessar informações que o kernel disponibiliza.

Lembre-se de que o caminho /sys/class/net/eth0/speed assume que sua interface de rede se chama eth0. Se sua interface tiver um nome diferente, você substituiria eth0 pelo nome correto.

Você agora aprendeu três maneiras diferentes de obter informações sobre suas interfaces de rede e sua velocidade!

Clique em Continuar para concluir este laboratório.

Resumo

Neste laboratório, aprendemos como verificar a velocidade de uma interface de rede no Linux usando três métodos diferentes. Primeiro, utilizamos o comando ethtool, um utilitário poderoso para consultar e controlar as configurações de rede, para exibir diretamente a velocidade da interface. Em seguida, exploramos o comando ip link show para identificar o nome da interface de rede, o que é crucial para usar ferramentas como ethtool. Finalmente, descobrimos como inspecionar o diretório /sys/class/net, parte do sistema de arquivos virtual sysfs, para encontrar as informações de velocidade da interface, examinando o conteúdo do arquivo speed dentro do diretório da interface. Esses métodos fornecem diferentes maneiras de acessar e verificar a velocidade da interface de rede, oferecendo flexibilidade dependendo da situação e das ferramentas disponíveis.