Configuración NAT · 3 min read · Jan 08, 2026

Configuración Paso a Paso de NAT con iptables

Configuración Paso a Paso de NAT con iptables

Este tutorial muestra cómo configurar la traducción de direcciones de red (NAT) en un sistema Linux con reglas de iptables para que el sistema pueda actuar como un gateway y proporcionar acceso a internet a múltiples hosts en una red local utilizando una sola dirección IP pública. Esto se logra reescribiendo las direcciones de origen y/o destino de los paquetes IP a medida que pasan a través del sistema NAT.

Requisitos:

CPU - PII o más
OS - Cualquier distribución de Linux
Software - Iptables
Tarjetas de Interfaz de Red: 2

Aquí están mis consideraciones:

Reemplace xx.xx.xx.xx con su IP WAN

Reemplace yy.yy.yy.yy con su IP LAN

(i.e. 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8 como sugiere el Sr. tzs)

WAN = eth0 con IP pública xx.xx.xx.xx
LAN = eth1 con IP privada yy.yy.yy.yy/ 255.255.0.0

Procedimiento Paso a Paso

Paso #1. Agregar 2 tarjetas de red a la caja Linux

Paso #2. Verificar las tarjetas de red, si están instaladas correctamente o no

ls /etc/sysconfig/network-scripts/ifcfg-eth* | wc -l

( La salida debería ser “2”)

Paso #3. Configurar eth0 para Internet con una IP Pública (IP de red externa o Internet)

cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=none
BROADCAST=xx.xx.xx.255 # Entrada Opcional
HWADDR=00:50:BA:88:72:D4 # Entrada Opcional
IPADDR=xx.xx.xx.xx
NETMASK=255.255.255.0 # Proporcionado por el ISP
NETWORK=xx.xx.xx.0 # Opcional
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes
GATEWAY=xx.xx.xx.1 # Proporcionado por el ISP

Paso #4. Configurar eth1 para LAN con una IP Privada (red interna privada)

cat /etc/sysconfig/network-scripts/ifcfg-eth1

BOOTPROTO=none
PEERDNS=yes
HWADDR=00:50:8B:CF:9C:05 # Opcional
TYPE=Ethernet
IPV6INIT=no
DEVICE=eth1
NETMASK=255.255.0.0 # Especificar según su requerimiento
BROADCAST=””
IPADDR=192.168.2.1 # Gateway de la LAN
NETWORK=192.168.0.0 # Opcional
USERCTL=no
ONBOOT=yes

Paso #5. Configuración del Host (Opcional)

cat /etc/hosts

127.0.0.1 nat localhost.localdomain localhost

Paso #6. Configuración del Gateway

cat /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=nat
GATEWAY=xx.xx.xx.1 # Gateway de Internet, proporcionado por el ISP

Paso #7. Configuración de DNS

cat /etc/resolv.conf

nameserver 203.145.184.13 # Servidor DNS Primario proporcionado por el ISP
nameserver 202.56.250.5 # Servidor DNS Secundario proporcionado por el ISP

Paso #8. Configuración de NAT con IP Tables

iptables --flush            # Vaciar todas las reglas en las tablas filter y nat
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --delete-chain
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface eth1 -j ACCEPT
echo 1 > /proc/sys/net/ipv4/ip_forward
service iptables restart

Paso #9. Pruebas

ping 192.168.2.1

Pruébelo en sus sistemas cliente

ping google.com

Configurando PCs en la red (Clientes)

• Todos los PC en la red privada de la oficina deben establecer su “gateway” como la dirección IP de red privada del ordenador gateway Linux.
• El DNS debe configurarse con el del ISP en internet.
Configuración de Windows ‘95, 2000, XP:

• Seleccionar “Inicio” + “Configuración” + “Panel de Control”
• Seleccionar el icono “Red”
• Seleccionar la pestaña “Configuración” y hacer doble clic en el componente “TCP/IP” para la tarjeta de ethernet. (NO el TCP/IP -> Adaptador de Marcado)
• Seleccionar las pestañas:
o “Gateway”: Usar la dirección IP de la red interna de la caja Linux. (192.168.2.1)
o “Configuración de DNS”: Usar las direcciones IP de los Servidores de Nombres de Dominio del ISP. (Dirección IP real de internet)
o “Dirección IP”: La dirección IP (192.168.XXX.XXX - estática) y la máscara de red (típicamente 255.255.0.0 para una pequeña red de oficina local) del PC también se puede configurar aquí.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.