Como construir um gateway do meu sistema operacional Linux

7

Eu quero configurar meu Linux para que ele seja usado como um roteador de rede (gateway). Alguém pode me dar algumas dicas sobre isso? (links são bem vindos!)

    
por artaxerxe 14.01.2012 / 10:36

2 respostas

6

Para um roteador simples, existem apenas duas etapas que precisam ser executadas.

Ativar roteamento

O primeiro passo é habilitar o roteamento no kernel. Por padrão, o kernel descarta pacotes que não reconhece; depois de ativar o roteamento, ele os encaminhará. Você precisa emitir um desses dois comandos quando o computador inicializar:

sysctl -w net.ipv4.ip_forward=1
echo 1 >/proc/sys/net/ipv4/ip_forward

Muitas distribuições têm um arquivo chamado /etc/sysctl.conf , onde você pode colocar a linha net.ipv4.ip_forward=1 para executar esse comando quando o computador é inicializado. Se houver um diretório /etc/sysctl.d , você poderá adicionar um arquivo nesse diretório em vez de editar /etc/sysctl.conf ; chame o arquivo something.conf .

Para o IPv6, a configuração correspondente é net.ipv6.conf.all.forwarding ou /proc/sys/net/ipv6/conf/all/forwarding . Você também pode usar net.ipv4.conf.all.forwarding ou /proc/sys/net/ipv4/conf/all/forwarding para IPv4.

Definir tabelas de roteamento

O segundo passo é definir as tabelas de roteamento. Isso pode ser simples ou complicado, dependendo de quanto você precisa fazer. Para usos simples, configure cada endereço e máscara de rede de suas interfaces de rede e adicione qualquer rota extra necessária com o comando route .

Indo além do simples roteamento

Se você precisar reescrever pacotes, o comando básico é iptables ( ip6tables para IPv6). (“Netfilter” é o nome do recurso de tratamento de pacotes do kernel, e “iptables” se o nome do programa que o controla.) É onde procurar por filtragem, NAT e mais.

Para configurações complexas, consulte o comando ip do pacote iproute2 .

    
por 15.01.2012 / 02:27
3

Primeiro, conecte os IPs da rede para os quais você deseja atuar como roteador. Obtenha várias placas de interface de rede ou configure uma interface virtual.
Você precisa ativar o encaminhamento de pacotes a partir de /etc/sysctl.conf e, em seguida, configurar o iptables para o NAT. Aqui está um breve tutorial para o mesmo.

    
por 14.01.2012 / 11:38