Como NAT um PC com Windows através de um servidor Linux?

2

Eu tenho que NAT um PC com Windows com IP 10.10.10.10 através de um servidor Linux com duas placas de rede. Os endereços IP das NICs são 20.20.20.50 (conectados a uma rede externa) e 10.10.10.9. A segunda NIC é conectada ao PC com Windows. Meu requisito é que eu consiga alcançar o PC Windows a partir da rede externa, por isso preciso do NAT 20.20.20.40 (este é o IP através do qual a rede externa deve poder acessar o PC com Windows) para 10.10.10.10.

Como devo configurar o iptables no servidor Linux para realizar isso?

    
por user2007247 30.01.2013 / 21:22

1 resposta

1

@John Siu está apenas parcialmente correto - embora os passos que ele apontou sejam necessários para o encaminhamento para o trabalho, o molho NAT mágico é definitivamente necessário, já que 20.20.20.50 é um endereço IP real, mas 10.10.10.x não é. / p>

Para conectividade de saída (o que parece que você já pode ter)

Supondo que a interface externa é eth0 e a interface interna é eth1, você também precisa de uma regra como

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

ou similarmente, mas com um controle muito mais rigoroso

/sbin/iptables -t nat -A POSTROUTING -s 10.10.10.10 -o eth0 -j SNAT --to 20.20.20.40

Para a conectividade de entrada do mundo para o seu PC

/sbin/iptables -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 10.10.10.10:80

Isso permitirá que solicitações vindas do mundo na porta TCP 80 para o seu PC Windows. (Você, é claro, modificaria as portas e o protocolo conforme necessário)

    
por 01.02.2013 / 07:54