NAT

 

El protocolo NAT, Network Address Translation (Traducción de direcciones de red), está definido en el RFC 1918(https://tools.ietf.org/html/rfc1918), básicamente se implementa en un dispositivo intermedio entre dos redes y se encarga de traducir las direcciones de una de ellas en una dirección de la otra, para ello modifica la cabecera del paquete IP que le llega.

Cabecera IP

En general hace corresponder un rango de direcciones privadas dentro de una red de área local con una dirección pública de Internet.

Espacio de direcciones privadas

 

Estas direcciones no o son válidas en internet por lo que necesitan un router que se encargue no solo de direccionar el tráfico sino también de traducirlo a direcciones públicas.

IANA define los siguientes espacios de direcciones privadas:

10.0.0.0        –   10.255.255.255  (10/8)

172.16.0.0      –   172.31.255.255  (172.16/12)

192.168.0.0     –   192.168.255.255 (192.168/16)

 

El siguiente ejemplo muestra una subred privada 10.10.10.0/24, conectada por la interfáz 10.10.10.1 del equipo Routing Server que tiene implementado NAT, por lo que traduce los paquetes de la consulta HTTP que le llega de Stratosphere-DC(10.10.10.10) hacia WebServer(210.60.60.120) a un nuevo paquete IP con la cabecera modificada en la que la dirección de origen será la ip de su interfaz conectado a internet 210.60.60.60.

Ejemplo NAT

Nat en Powershell

 

Para poder configurar este escenarios se ha instalado en el Routing Server un S.O. Windows Server 2016 con el rol de RRAS, se configura el routing y se crea el objeto NetNAT con el siguiente código:

New-NetNat -Name nat -InternalIPInterfaceAddressPrefix 10.10.10.0/24

Se puede visualizar la existencia de este traductor con:

Get-NetNat

No hace falta ningún otro parámetro ya que solo puede haber un objeto de tipo Nat en el server, es importante el uso de este cmdlet ya que es la única forma de saber si tenemos un objeto NAT en nuestro equipo.

Para eliminarlo utilizamos:

Remove-NetNat -Name nat -Confirm:$false

La opción -Confirm:$false se utiliza para que no pida confirmación de eliminación previa.

 

Autor/a: Mario Oswaldo Ramos Marín

Curso: Microsoft MCSA Windows Server 2016 + Microsoft MCSE Cloud Platform & Infrastructure

Centro: Tajamar

Año académico: 2017-2018

https://www.linkedin.com/in/mario-oswaldo-ramos-marin-mr23/