Como configurar iptables para nat

Tal vez a alguien les sirva esto. Si tienen una conexion a internet, y quieren compartirla a una red, con linux, se puede hacer con iptables. En mi caso, tengo una maquina con SuSE como firewall (iptables, o el susefirewall), con dos tarjetas de red. La eth0 esta conectada a la red externa ( internet ) y la eth1 a la red interna ( lan ). Solo hay que hacer la siguiente configuracion:

#para habilitar el nat
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

y configurar las maquinas dentro de la lan con la IP que tenga eth1 como router. Por ejemplo, si la eth1 le asignas 192.168.0.1, … entonces las maquinas dentro de la red las configuras como

ifconfig ethX 192.168.0.100  netmask NETMASK
route add default gw 192.168.0.1

Otra opcion es configurar un DHCP server ( fue lo que hice en mi caso ) para que pueda dar los DNS y el router a los clientes de DHCP.

Ah! Y si tienes IPs publicas extras, que le quieras asignar a maquinas dentro de la lan, se puede hacer: suponiendo que tienes una ip publica extra configura usando ifconfig para darle un alias a la tarjeta de red que tengas en la red publica, o la herramienta que tengas en tu distro ( dentro del yast en suse, o netconfig o lo que sea ). Despues, necesitas crear dos reglas:

iptables -t nat -A PREROUTING -p tcp -d 64.233.167.99 -j DNAT --to-destination 192.168.0.100
iptables -A FORWARD -i eth0 -d 192.168.0.100  -j ACCEPT

( suponiendo que tu ip local sea 192.168.0.100 y tu ip externa sea 64.233.167.99 … y si, esta ip es de google.com jaja )

Las reglas de arriba se pueden usar con –dport para direccionar solamente un puerto, en lugar de la IP completa.

Suerte.

3 Responses to “Como configurar iptables para nat”

  1. :S

  2. :-? lo probare, ahi te aviso como me fue jojojojo

  3. Estemmmhh… ¿me explicas desde el ‘quiúbole’, pls?

Discussion Area - Leave a Comment