Eu tenho vários IPs de WAN que quero traduzir para vários IPs de LAN, mas só abro algumas portas. Nenhum dos IPs da WAN que desejo traduzir é o IP da WAN principal que o roteador usa para se conectar à Internet.
Por exemplo, quero traduzir - WAN IP 216.58.216.238 para LAN IP 10.10.10.10 e abrir as portas 80 e 443
Mostra inicialmente ifconfig
as seguintes interfaces: br0
, eth0
, eth1
, eth2
, lo
, vlan1
, vlan2
.
vlan2
tem meu endereço IP externo atribuído a ele.
Como eu faria a tradução?
Isto é o que eu tentei até agora:
ifconfig eth0:1 216.58.216.238 netmask 255.255.255.0 up
iptables -t nat -A PREROUTING -i eth0 -d 216.58.216.238 -p tcp --dport 80 -j DNAT --to-destination 10.10.10.10:80
iptables -t nat -I POSTROUTING -s 10.10.10.10 -j SNAT --to 216.58.216.238
mas isso não parece funcionar. Não consigo acessar meu serviço em 10.10.10.10:80 de uma rede externa usando a porta 216.58.216.238:80.
executando ifconfig
após a reinicialização, algumas interfaces extras aparecem. Por exemplo: eth0:1
. Ele tem o mesmo HWaddr que eth0
e vlan2
e tem o endereço IP externo correto atribuído ao seu inet addr
, mas ainda não consigo ver o dispositivo fora da minha rede.
se eu executar, iptables -t nat -vnL
parece ter registrado alguma coisa. Por exemplo eu tenho:
Chain PREROUTING (policy ACCEPT 5212 packets, 475K bytes)
pkts bytes target prot opt in out source destination
...
0 0 DNAT tcp -- eth0 * 0.0.0.0/0 216.58.216.238 tcp dpt:80 to 10.10.10.10:80
...
Alguma idéia do que preciso alterar para permitir o acesso?
editar.
Eu poderia fazer meus serviços funcionarem usando os comandos a seguir, mas eles permitem a passagem de todas as portas. Existem tantos switches e opções para iptables ...
ifconfig eth0:1 216.58.216.238 netmask 255.255.255.0
iptables -t nat -I PREROUTING -d 216.58.216.238 -j DNAT --to 10.10.10.10
iptables -t nat -I POSTROUTING -s 10.10.10.10 -j SNAT --to 216.58.216.238