CORRECÇÃO 3: RESOLVIDO! Eu precisava adicionar o servidor DNS oficial da VLAN do meu departamento como DNS para os clientes.
Li um grande número de postagens sobre problemas do iptables ao usar o Linux como um roteador, mas nada me ajudou com o seguinte:
Estou configurando várias estações de trabalho de estudantes em nosso departamento da universidade, onde temos IPs limitados em uma VLAN. As estações de trabalho precisam se comunicar umas com as outras e ficar on-line. Eles explicitamente não devem ser acessados pela internet. Em vez de dar a cada estação de trabalho um dos IPs raros na VLAN da universidade, eu quero usar a seguinte configuração:
Temos um servidor que está executando o servidor Ubuntu 14.04 com 4 portas Ethernet (eu uso 2 para essa configuração).
A primeira porta é em1 e é conectada a um switch L2 junto com todas as estações de trabalho.
A segunda porta é em2 e está conectada à VLAN da universidade.
Primeiro, o problema e, em seguida, minha configuração:
CORREÇÃO: O material wget / apt-get parece funcionar apenas algumas vezes.
CORRECÇÃO 2: Eu tive um erro de digitação em pelo menos uma das entradas de DNS para um cliente, vou tentar o resto amanhã e, em seguida, marque isso como fechado.
Configurações, etc:
Eu ativei o encaminhamento no kernel removendo o comentário
net.ipv4.ip_forward=1
em /etc/sysctl.conf
.
Minhas entradas /etc/network/interfaces
para as duas portas Ethernet são assim:
auto em2
iface em2 inet static
address x.x.x.x
netmask x.x.x.x
network x.x.x.x
gateway x.x.x.x
dns-nameservers x.x.x.x x.x.x.x
dns-search x.example.com
pre-up iptables-restore < /etc/network/iptables.up.rules
post-down iptables-save > /etc/network/iptables.up.rules
auto em1
iface em1 inet static
address 192.168.99.252
netmask 255.255.255.128
pre-up iptables-restore < /etc/network/iptables.up.rules
post-down iptables-save > /etc/network/iptables.up.rules
(Os parâmetros em2 são redigidos por motivos de privacidade, mas não acho que eles desempenhem um papel aqui. Observe que temos dois servidores DNS internos, isso pode ter um papel no problema?)
Eu também tenho setup iptables com sudo iptables -t nat -A POSTROUTING -o em2 -j MASQUERADE
então sudo iptables -t nat -L
me dá:
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- anywhere anywhere
MASQUERADE all -- anywhere anywhere
(essa segunda entrada deve ter acontecido por acidente, mas não deve ser preocupante, certo?)
Todos os clientes têm IP estáticos com as seguintes configurações:
A solução foi adicionar a entrada DNS oficial da VLAN do meu departamento às entradas DNS dos clientes. O roteador não foi configurado para ser usado como DNS por si próprio e não redirecionou as solicitações de DNS para o DNS externo. Então, para todo cliente: - DNS: DNS VLAN oficial da rede externa
Tags dns networking iptables routing nat