Como redirecionar as portas para uma interface virtual?

3

Existem dois IPs associados a uma interface de rede física eth0 e eth0: 0.

O seguinte funciona bem para a primeira interface:

iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080

Howerver o mesmo não funciona para a segunda interface:

iptables -A PREROUTING -t nat -i eth0:0 -p tcp --dport 80 -j REDIRECT --to-port 8080

Também tentei:

iptables -A PREROUTING -t nat -p tcp --dport 80 -d $THE_IP -j REDIRECT --to-port 8080

Então, a questão é como redirecionar em uma interface virtual.

    
por f3r3nc 05.07.2012 / 19:44

3 respostas

5

Você não faz. Interfaces de alias são uma convenção de notação que não existem realmente nas camadas profundas do kernel onde o iptables se movimenta. Use um endereço IP (seu terceiro comando de exemplo está quebrado e terá produzido uma mensagem de erro que deveria lhe dar uma pista) e tudo ficará bem.

    
por 05.07.2012 / 19:51
1

Seu terceiro comando está faltando alguma coisa: a habilitação de multiportas Adicione -m multiport no começo, então tudo ficará bem. + é suposto ser --dports e --to-ports (forma plural) mesmo se você especificar apenas uma única porta

Note que eu tive um problema semelhante + Eu já tinha um aplicativo usando a porta 80 (apache2) que eu tive que matar antes de poder usar o redirecionamento

    
por 03.04.2018 / 20:16
0

Você deve usar a interface TUN / TAP para fazer este trabalho. Consulte este tutorial para obter mais detalhes.

    
por 07.02.2013 / 14:05