Tabela de conteúdos

Configurações básicas de rede

A seguir serão apresentados os principais comandos e arquivos de configuração, com os quais podemos realizar configurações básicas relacionadas à rede em uma máquina Linux.

Comandos básicos para configuração de rede

No Linux existem uma série de comandos através dos quais podemos realizar configurações básicas relacionadas à rede tais como: atribuição de endereços IP/máscara às interfaces (placas) de rede; configuração de endereços de rede e broadcast; adição/remoção de rotas etc.

Cada interface de rede pode ter suas configurações visualizadas ou alteradas por meio de um nome que a identifica no sistema. Os tipos mais comuns de interfaces são:

ifconfig: visualizando/configurando endereços IP e máscaras de rede

Sintaxes:
ifconfig [nome-interface] [endereco-ip] <netmask> [mascara] <broadcast> [broadcast]
ifconfig [nome-interface] [up|down]

Exemplos:

aluno@debian:~# ifconfig
aluno@debian:~# ifconfig eth0
aluno@debian:~# ifconfig eth0 down
aluno@debian:~# ifconfig eth0 10.11.12.13
aluno@debian:~# ifconfig eth0 10.11.12.13 netmask 255.255.255.0

route: visualiza, insere e remove rotas

Sintaxes:
route [-n]
route add default gw <endereço-roteador>
route del default
route add -net <rede-destino> netmask <mascara-destino> gw <endereço-roteador>
route del -net <rede-destino> netmask <mascara-destino> gw <endereço-roteador>

Exemplos:

aluno@debian:~# route -n
aluno@debian:~# route add default gw 10.11.12.1
aluno@debian:~# route add -net 10.15.16.0 netmask 255.255.255.0 gw 10.11.12.254

netstat: mostra diversas informações sobre a rede

Sintaxe:
netstat [opções]

Opções (principais):
-n : Não utiliza o DNS para traduzir endereços IP;
-r : Mostra a tabela de roteamentoq;
-i : Mostra a tabela de interfaces;
-s : Mostra estatísticas de uso da rede;
-t : Mostra informações sobre conexões TCP;
-u : Mostra informações sobre fluxos UDP;
-p : Mostra o programa relacionado a um fluxo ou conexão;
-l : Mostra sockets em estado LISTEN (servidores);

Exemplos:

aluno@debian:~# netstat -rn
aluno@debian:~# netstat -i
aluno@debian:~# netstat -s
aluno@debian:~# netstat -tp

Arquivos do sistema com configurações relacionadas à rede

Além dos comandos vistos anteriormente, existem uma série de arquivo onde podemos encontrar informações ou configurações relacionadas à redes. Os principais serão mostrados a seguir:

/etc/hostname

Neste arquivo encontramos o nome da máquina.

root@debian-ISA:~# cat /etc/hostname 
debian-ISA
root@debian-ISA:~# 

/etc/hosts

Neste arquivos podemos atribuir nomes para máquinas. Os nomes atribuídos irão funcionar de forma independente do DNS.

root@debian-ISA:~# cat /etc/hosts
127.0.0.1	localhost
10.0.2.15	debian-ISA

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
root@debian-ISA:~# 

/etc/resolv.conf

Neste arquivo encontramos configurações relacionadas ao DNS. As principais opções que encontramos nele são:

nameserver <endereço-IP> : Determina o servidor de DNS da máquina;
domain <domínio> : Determina o domínio da máquina;

root@debian-ISA:~# cat /etc/resolv.conf 
nameserver 192.168.1.1
domain home.com.br
root@debian-ISA:~#

/etc/network/interfaces

Neste arquivo podemos configurar cada uma das interfaces de rede da máquina. As configurações contidas neste arquivo serão lidas, por exemplo, quando se (re)inicia a máquina ou se habilita uma placa de rede. Este arquivo possui uma sintaxe própria:

iface <nome-de-interface> inet {loopback|dhcp|static}

O modo loopback é exclusivo para a interface lo. Os modos dhcp e static são utilizados em quaisquer outras interfaces de rede.

Exemplo 1: Configuração da interface lo

auto lo
iface lo inet loopback

Exemplo 2: Configuração da interface eth0 via DHCP

auto eth0
iface eth0 inet dhcp

Exemplo 3: Configuração estática da interface eth0

auto eth0
iface eth0 inet static
  address 10.11.12.13
  netmask 255.255.255.0
  network 10.11.12.0      # Opcional
  broadcast 10.11.12.255  # Opcional
  gateway 10.11.12.1

Após alterarmos o arquivo /etc/network/interfaces devemos executar um script para que as configurações do arquivo sejam refletidas no sistema. As duas principais formas de realizar esta operação são:

root@debian-ISA:~# service networking stop
root@debian-ISA:~# service networking start

Desta maneira todas as interfaces de rede existentes na máquina terão seu funcionamento interrompido, e a seguir iniciado novamente, já com a nova configuração. É adequada para clientes ou servidores com uma única placa de rede.

root@debian-ISA:~# ifdown eth1
root@debian-ISA:~# ifup eth1

Desta maneira apenas a interface de rede eth1 terá seu funcionamento interrompido, e a seguir iniciado novamente, já com a nova configuração. Esta forma é mais adequada para servidores com mais de uma interface de rede.

Nos sistemas Debian e Ubuntu recentes é comum utilizar o software NetworkManager para configurar conexões de rede de diversos tipos (com fio, sem fio, DSL, 3G, VPN etc). Neste caso, as configurações nele realizadas irão prevalecer sobre as encontradas no arquivo /etc/network/interfaces.