Uma interface de rede linux é o ponto crucial de conexão entre a pilha de software de rede do kernel e o hardware de rede físico. Ela permite que seu sistema operacional envie e receba dados através de uma rede. Já vimos um exemplo de como é uma interface linux configurada:
pete@icebox:~$ ifconfig -a
eth0 Link encap:Ethernet HWaddr 1d:3a:32:24:4d:ce
inet addr:192.168.1.129 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fd60::21c:29ff:fe63:5cdc/64 Scope:Link
Entendendo as Interfaces de Rede
Ao visualizar suas configurações de rede, você verá interfaces com nomes como eth0 (a primeira placa Ethernet), wlan0 (uma interface sem fio) ou lo (a interface de loopback). A interface de loopback é uma interface virtual especial que representa seu próprio computador, permitindo que você se conecte a serviços em execução localmente.
Uma interface pode estar em estado "up" (ativa) ou "down" (inativa). O estado "up" significa que ela está ativa e pronta para transmitir dados, enquanto "down" a desativa. As informações chave exibidas para cada interface incluem o HWaddr (seu endereço MAC exclusivo), o endereço inet (seu endereço IPv4) e o endereço inet6 (seu endereço IPv6), juntamente com a máscara de sub-rede e o endereço de broadcast.
O Comando Legado ifconfig
O comando ifconfig é uma ferramenta clássica para configurar uma interface de rede linux. Na inicialização do sistema, ele geralmente é executado para configurar as interfaces com base em arquivos de configuração. Embora ainda esteja disponível em muitos sistemas, agora é considerado uma ferramenta legada.
Você pode usar o ifconfig para atribuir um endereço IP manualmente e ativar uma interface:
ifconfig eth0 192.168.2.1 netmask 255.255.255.0 up
Você também pode usar os comandos relacionados ifup e ifdown para ativar ou desativar facilmente uma interface:
ifup eth0
ifdown eth0
O Comando Moderno ip
O comando ip é o substituto moderno e mais poderoso para o ifconfig. É o método preferido para gerenciar a pilha de rede na maioria das distribuições Linux atuais.
Aqui estão alguns exemplos comuns de seu uso:
Mostrar informações de todas as interfaces:
ip link show
Mostrar estatísticas detalhadas para uma interface específica:
ip -s link show eth0
Mostrar endereços IP atribuídos às interfaces:
ip address show
Ativar ou desativar uma interface:
ip link set eth0 up
ip link set eth0 down
Adicionar um endereço IP a uma interface:
ip address add 192.168.1.1/24 dev eth0
Arquivos de Configuração de Rede
Embora comandos como ip e ifconfig configurem o estado ativo de uma interface, essas alterações não são permanentes e serão perdidas na reinicialização. Para tornar as configurações persistentes, você deve editar arquivos de configuração.
A localização comum para esses arquivos é /etc/network/interfaces. O arquivo etc network interfaces é particularmente prevalente em sistemas baseados em Debian, como o Ubuntu. Gerenciar debian network interfaces através deste arquivo permite definir endereços IP estáticos, gateways e outras configurações que são aplicadas automaticamente na inicialização. A estrutura dentro de debian network/interfaces é direta e bem documentada.