Saltar para o conteúdo

Guia do Linux/Avançado/Configurações especiais de Rede/IP Alias

Origem: Wikilivros, livros abertos por um mundo aberto.

Este recurso permite configurar uma interface de rede para responder por um ou mais IPs, que não precisam pertencer a mesma faixa. Para usuários externos, a impressão é que a rede tem "muitas" máquinas, quando na realidade apenas uma responde por todos estes endereços virtuais. Podemos citar algumas utilizações úteis deste recurso:

  • Simular uma rede com diversas máquinas
  • Construir virtual hosts baseados em IP
  • Definir endereçamentos secundários para fins de análise e depuração de pacotes (principalmente como armadilhas para trojans)
  • Colocação de serviços com operação restritas a interfaces em funcionamento através de faixas específicas usando as configurações da interface virtual
  • Transição de IP de servidores de forma transparente
  • Entre muitas outras. A idéia aqui é mostrar a simplicidade de se configurar este recurso e entender o processo, que é bastante simples.

Para configurar o recurso de IP Alias é necessário apenas que a opção IP Aliasing Support seja habilitada no kernel (como módulo ou embutida). Em nosso exemplo abaixo, temos uma rede com a interface eth0 configurada com o IP 192.168.1.1 (classe C privada) e queremos adicionar uma interface virtual que atenda pelo IP 172.16.0.1 (classe B privada) e depois seguir os seguintes passos:

  • Ative a interface de rede com ifconfig ou ifup (caso esteja usando a Debian).
  • Crie uma interface virtual usando o comando ifconfig eth0:0 172.16.0.1. Isto criará uma nova interface chamada eth0:0 que passará a responder pelo IP 172.16.0.1. É permitido o uso de nomes para especificar a interface virtual, como: eth0:rede1, eth0:rede2, eth0:escritório.
  • Digite ifconfig para ver as configurações de sua nova interface de rede. Use o ping também para vê-la: ping 172.16.0.1.
     eth0       Encapsulamento do Link: Ethernet  Endereço de HW 00:80:AE:B3:AA:AA
               inet end.: 192.168.1.1  Bcast:192.168.1.255  Masc:255.255.255.0
               UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
               RX packets:979 errors:0 dropped:0 overruns:0 frame:0
               TX packets:1228 errors:0 dropped:0 overruns:0 carrier:0
               colisões:1 txqueuelen:100
               RX bytes:71516 (69.8 Kb)  TX bytes:1146031 (1.0 Mb)
               IRQ:10 Endereço de E/S:0x300

     eth0:0    Encapsulamento do Link: Ethernet  Endereço de HW 00:80:AE:B3:AA:AA
               inet end.: 172.16.0.1  Bcast:172.16.0.255  Masc:255.255.255.0
               UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
               IRQ:10 Endereço de E/S:0x300

Note que o MAC Address da placa eth0 e eth0:0 são o mesmo, indicando que a mesma interface atende ambos os IPs.

  • Se necessário ajuste as rotas ou gateway com o comando route (veja [ch-rede.html#s-rede-rota-c Configurando uma rota no Linux, Seção 4.5.1]).

Para desativar uma interface de rede virtual, utilize a sintaxe: ifconfig eth0:0 down ou ifdown eth0:0 (caso esteja usando a Debian). Se o teste com o ping não funcionar, verifique se possui o suporte a IP Alias no kernel, se o módulo precisa ser carregado manualmente (caso seu kernel não esteja compilado com o kmod) ou se existe um firewall restritivo bloqueando seu IP. Na distribuição Debian a configuração de uma interface virtual pode ser feita de forma idêntica a interfaces estáticas padrão:

     auto eth0
     iface eth0 inet static
      address 192.168.1.1
      netmask 255.255.255.0
      network 192.168.1.0
      broadcast 192.168.1.255

     auto eth0:0
     iface eth0:0 inet static
      address 172.16.0.1
      netmask 255.255.0.0
      network 172.16.0.1
      broadcast 172.16.255.255

OBS1: Quando você desativa uma interface física (eth0), todas as interfaces virtuais também são desativadas. OBS2: Caso utilize um firewall (principalmente com a política padrão permissiva), esteja atento as modificações que precisa realizar para não comprometer a segurança de sua máquina. Caso tenha dados considerados seguros em sua máquina e esteja em dúvida sobre as implicações de segurança do IP Alias em sua máquina, consulte seu administrador de redes. OBS3: Note que somente os 4 primeiros caracteres serão mostrados na saída do ifconfig, desta forma procure utilizar no máximo esta quantidade de caracteres para evitar problemas durante uma futura administração do servidor, no caso de esquecimento do nome completo da interface virtual).