redireciona o tráfego de 2 NICs externas do Ubuntu para hosts internos específicos

1

Estou tendo problemas para redirecionar o tráfego de entrada para duas interfaces externas no meu servidor Ubuntu 12.10 para dois hosts internos separados. Eu sou capaz de redirecionar o tráfego de entrada na minha eth0 muito bem para o host interno, mas o tráfego de entrada para a minha interface eth1 nunca vai em qualquer lugar.

Alguma sugestão?

Aqui estão as configurações de iptables e interfaces que estou usando.

/etc/iptables.rules
-A PREROUTING -i eth0 -p tcp -m tcp --dport 8000 -j DNAT --to-destination 10.101.0.20:3389
-A PREROUTING -i eth1 -p tcp -m tcp --dport 3389 -j DNAT --to-destination 10.101.0.79:3389
-A POSTROUTING -o eth0 -j SNAT --to-source 63.22.130.186
-A POSTROUTING -o eth1 -j SNAT --to-source 63.22.130.187


/etc/network/interfaces
# eth0
auto eth0
allow-hotplug eth0
iface eth0 inet static
      address 63.22.130.186
      netmask 255.255.255.248
      gateway 63.22.130.185
      dns-nameservers 8.8.8.8
      pre-up iptables-restore < /etc/iptables.rules

# eth1
auto eth1
allow-hotplug eth1
iface eth1 inet static
      address 63.22.130.187
      netmask 255.255.255.248
      dns-nameservers 8.8.8.8

# eth2
auto eth2
allow-hotplug eth2
iface eth2 inet static
      address 10.101.0.1
      netmask 255.255.0.0
      dns-nameservers 8.8.8.8
    
por user127875 01.05.2013 / 05:07

1 resposta

1

Parece ser um problema de roteamento.

O tráfego de retorno usa a interface de saída padrão entre as duas interfaces que você tem em sua máquina externa.

E, aparentemente, não é a mesma interface do tráfego usado para o tráfego de entrada. Você pode verificar se esse é o caso executando tcpdump -v -i ethX  na sua máquina para cada uma das interfaces. Onde X é o número da interface

    
por tomodachi 02.05.2013 / 22:43