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
.
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:
eth0
. Uma segunda interface na mesma máquina será chamada de eth1
, e assim por diante.802.11
. O esquema de numeração é semelhante ao das placas ethernet;
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
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
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
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:
Neste arquivo encontramos o nome da máquina.
root@debian-ISA:~# cat /etc/hostname debian-ISA root@debian-ISA:~#
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:~#
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:~#
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.
dhcp :
Configuração automática, não é necessário informar nenhuma outra opção;static :
Configuração manual, devemos especificar endereço IP, máscara, gateway etc.
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
.