NAT de gancho de cabelo com IP WAN dinâmico

3

Eu tenho um IP de WAN dinâmico, então se ele mudar meu iptables não será mais aplicável.

Aqui está meu hairpin nat de trabalho, onde x.x.x.x é o meu IP da WAN

br0 - LAN

eth1 - WAN

-A PREROUTING -d x.x.x.x -p tcp --dport 80 -j DNAT --to-destination 192.168.0.9
-A POSTROUTING -s 192.168.0.0/27 -d 192.168.0.0/27 -o br0 -j MASQUERADE
-A POSTROUTING -s 192.168.0.0/27 -o eth1 -j MASQUERADE

Existe outra maneira pela qual eu não tenho que usar -d x.x.x.x especificamente no caso do meu IP da WAN mudar?

    
por Tek 28.04.2016 / 12:40

3 respostas

2

Reescreva a primeira regra como:

iptables -t nat -A PREROUTING -m addrtype --dst-type LOCAL -p tcp --dport 80 -j DNAT --to-destination 192.168.0.9

Observe que isso redirecionaria também as conexões para a porta 80 no IP da LAN.

Se você quiser evitar isso, com o IP da LAN a.b.c.d , altere a regra como:

iptables -t nat -A PREROUTING \! -d a.b.c.d -m addrtype --dst-type LOCAL -p tcp --dport 80 -j DNAT --to-destination 192.168.0.9
    
por 11.05.2016 / 18:36
1

Na regra DNAT, em vez de -d x.x.x.x , use -i eth1 -m addrtype --dst-type LOCAL .

    
por 29.04.2016 / 22:42
-1
-A PREROUTING -d $(ifconfig eth1 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}') -p tcp --dport 80 -j DNAT --to-destination 192.168.0.9

ou algo parecido ...

    
por 29.04.2017 / 20:15