iptables NAT com múltiplas interfaces

3

Eu tenho uma máquina do Ubuntu 10 que estou tentando configurar com o NAT.

eth0 é a interface WAN, que usa DHCP.

eth1, eth2, eth3 são interfaces de LAN. Eles estão conectados a 192.168.0.50, .51, .52, respectivamente.

O

NAT através da eth1 funciona muito bem. Em eth2 / 3, não recebo nada - "não há rota para hospedar" no ping. Aqui está minha configuração do iptables. Alguma coisa está obviamente errada?

# Generated by iptables-save v1.4.4 on Mon Jan 31 09:40:55 2011
*nat
:PREROUTING ACCEPT [1799:327587]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [23:2190]
-A POSTROUTING -j MASQUERADE 
COMMIT
# Completed on Mon Jan 31 09:40:55 2011
# Generated by iptables-save v1.4.4 on Mon Jan 31 09:40:55 2011
*filter
:INPUT ACCEPT [3474:500657]
:FORWARD ACCEPT [24:1613]
:OUTPUT ACCEPT [857:128814]
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT 
-A FORWARD -s 192.168.0.50/32 -i eth1 -o eth0 -m conntrack --ctstate NEW -j ACCEPT 
-A FORWARD -s 192.168.0.51/32 -i eth2 -o eth0 -m conntrack --ctstate NEW -j ACCEPT 
-A FORWARD -s 192.168.0.52/32 -i eth3 -o eth0 -m conntrack --ctstate NEW -j ACCEPT 
COMMIT
# Completed on Mon Jan 31 09:40:55 2011
# Generated by iptables-save v1.4.4 on Mon Jan 31 09:40:55 2011
*mangle
:PREROUTING ACCEPT [3890:612115]
:INPUT ACCEPT [3474:500657]
:FORWARD ACCEPT [220:45916]
:OUTPUT ACCEPT [857:128814]
:POSTROUTING ACCEPT [1140:186789]
-A PREROUTING -i eth1 -j MARK --set-xmark 0x3/0xffffffff 
-A PREROUTING -i eth2 -j MARK --set-xmark 0x4/0xffffffff 
-A PREROUTING -i eth3 -j MARK --set-xmark 0x5/0xffffffff 
COMMIT
# Completed on Mon Jan 31 09:40:55 2011
    
por Ben K. 31.01.2011 / 20:43

2 respostas

1

Obviamente, está errado usar o mesmo / 24 em diferentes interfaces.

    
por 01.02.2011 / 09:06
1

Como os três Ehternets estão na mesma rede (192.168.0.0/24), talvez você queira vinculá-los e NAT ao dispositivo de ponte, em vez de tratá-los individualmente.

brctl addbr br0
brctl addif br0 eth1
brctl addif br0 eth2
brctl addif br0 eth3

ifconfig br0 192.168.0.50/24 # For example

# Now NAT using br0 as local interface and eth0 as WAN
    
por 10.02.2012 / 09:46

Tags