Está en la página 1de 13

Prctica

2: NAT esttica y dinmica


Objetivos:

Configurar NAT esttico y dinmico en un router para traducir direcciones


privadas a direcciones pblicas
Asegurar conectividad en el router mediante el protocolo OSPF

Considereciones adicionales:

Conectar la mquina virtual de la distribucin Linux al host local utilizando un


router virtual otorgado por GNS3
Configurar el programa GNS3 en el sistema operativo Mac OS X

Marco de trabajo:


Primero que todo, debemos de tener en cuenta lo siguiente para poder arrancar el
programa GNS3 en Mac OS X.

Tener Python versin 2.7 instalado, por compatibilidad con GNS3
Corroborar que el script de VPCS est configurado correctamente
o La ubicacin es en
/Applications/GNS3.app/Contents/Resources/configs/vpcs_base_confi
g.txt
o Se configura en GNS3->Preferences->VPCS->Path to VPCS script
Tener instalado las extensiones de kernel TunTap
o Se pueden encontrar en http://tuntaposx.sourceforge.net/
Correr el programa GNS3 en modo root

Parte 1: Configuracin del escenario


Protocolo de enrutamiento:

Para configurar el protocolo de enrutamiento, debemos de introducir el siguiente
comando:

RouterX(config)# router ospf [process id]
RouterX(config-router)# network [ip_address] [wildcard_mask] area [area_id]

Como ejemplo:

R2(config-router)#network 200.200.50.0 0.0.0.255 area 0

Esto se debe de hacer para todas las redes a las que est conectado el router.


Una vez hecho esto, estamos listos para realizar el siguiente paso:

Configuracin de NAT


Para configurar la NAT, debemos de tener en claro cual es la frontera entre la red
interna y externa. En nuestro caso la frontera est dada por R1 en su interfaz Serial
0/0 as como la interfaz FastEthernet 0/0.

Definimos las interfaces con los siguientes comandos:

R1(config-interface)# ip nat inside
R1(config-interface)# ip nat outside

Al realizar este paso, tendremos lo siguiente al verificar las interfaces:



Ahora, sabemos que los rangos de direcciones son los siguientes:

IPs pblicas: 200.200.100.0/24 (omitiendo 100.1/24 y 100.2/24)
IPs privadas: 192.168.10.0/24 (omitiendo 10.1/24)

Por tanto, para asociar una IP privada con una pblica se utiliza el comando

R1(config)# ip nat inside source static [direccin_interna_local]
[direccin_interna_global]

Como ejemplo:

R1(config)#ip nat inside source static 192.168.10.20 200.200.100.10

Al revisar las traducciones de NAT, tenemos lo siguiente:

Corroborando con un ping desde la red externa, podemos ver que no se puede realizar
ping a la IP privada, pero si a la IP pblica.


Tambin, corroboramos que las PCs de la red interna tienen acceso a la red interna:


Al revisar la tabla de traducciones, tememos lo siguiente:

Configurando NAT dinmico


Para configurar la NAT de manera dinmica hace falta crear un pool de direcciones
pblicas. Esto se hace mediante el siguiente comando:

R1(config)# ip nat pool [nombre] [direccin_inicio] [direccin_fin] prefix-lenght
[bits_subred]

Ejemplo:

R1(config)# ip nat pool natpool 200.200.100.3 200.200.100.13 prefix-length 24

Posteriormente, es necesario crear una lista de acceso estndar para otorgar permiso
a las direcciones IP del rango privado que deseemos

Ejemplo:

R1(config)#ip access list standard 10
R1(config-std-nacl)# permit ip 192.168.10.0 0.0.0.255

Finalmente, debemos de vincular la lista de acceso con el pool de direcciones
mediante el comando:

R1(config)# ip nat inside source list [num_lista] pool [nombre del pool]

Ejemplo:

R1(config)# ip nat inside source list 10 pool natpool

Al realizar estos pasos, podemos ver en el router la configuracin siguiente:


Si intentamos acceder a la tabla de traducciones de NAT, no lo mostrar vaco, como
en el siguiente ejemplo:

Sin embargo, al hacer un Ping de la red interna a la externa, tenemos lo siguiente:



Y en el router:


El ping externo lo comprobaremos con la mquina virtual.

Parte 2: Configurando VM desde Mac OS



Para configurar la VM necesitamos lo siguiente:

Tener la VM conectada hacia la interfaz virtual vmnetX
Tener la VM con la IP que deseemos configurar y el Gateway del router al que
se va a configurar
Tener instalado TunTap

Configurando las interfaces TAP de la VM



Primero que todo, utilizaremos el componente cloud de GNS3 y lo configuraremos con
la interfaz TAP, como se muestra a continuacin:


Posteriormente, conectaremos la interfaz como una interfaz Ethernet normal en el
router. Debemos corroborar que se active en nuestra mquina:


Ahora, tenemos que borrar la configuracin que tenga la interfaz vmnetX (en nuestro
caso vmnet4):

Primero apagamos la interfaz con:

$sudo ifconfig vmnet4 down

Posteriormente borramos la configuracin con:

$sudo ifconfig vmnet4 inet delete

Lo siguiente que hay que hacer, es puentear la interfaz TAP con la interfaz vmnet 4.
Esto se hace mediante la creacin de un bridge (en nuestro caso bridge10):

$sudo ifconfig bridge10 create

Al crear el puente tenemos lo siguiente si revisamos su configuracin:


Posteriormente aadimos las interfaces y las ponemos arriba:

$sudo ifconfig bridge10 addm tap10
$sudo ifconfig bridge10 addm vmnet4
$sudo ifconfig bridge10 up
$sudo ifconfig vmnet 4 up


Finalmente, si revisamos la interfaz bridge10, podemos ver que ya han sido aadidas
las interfaces:

Configurando la mquina fsica



Para configurar la mquina fsica, haremos el mismo proceso de aadir una nube en
GNS3 y conectarla al router, solo que a la interfaz TAP le daremos una direccin IP
desde nuestra mquina fsica con el comando:

$sudo ifconfig tap11 ip 192.168.10.11/24

Que corroboraremos en la figura siguiente:



Para la mquina fsica eso es todo lo que se debe de hacer.


Configurando los gateways


Para configurar los gateways debemos de utilizar el comando route.

Para la mquina fsica

Debemos de configurar las redes 200.200.50.0/24 y 200.200.100.0/24 con el Gateway
correspondiente, que en este caso es 192.168.10.1. Esto mediante los comandos


$sudo route -n add -net 200.200.50.0/24 192.168.10.1
$sudo route -n add -net 200.200.100.0/24 192.168.10.1
Para la mquina virtual

Debemos de asignar el Gateway solo a la interfaz tap10. Esto con el comando:

$sudo route add 200.200.50.1 interface tap10

Al revisar la tabla del sistema (utilizando la GUI de NetStat), podemos ver que se han
agregado correctamente.

Pruebas

Ping de la VM a la mquina fsica. Vemos que al dar ping a 192.168.10.11 nos responde
la IP pblica 200.200.100.6, que fue la que se tom del pool de direcciones NAT.

Finalmente al visitar el servidor http mediante la direccin que le asignamos a la VM


(200.200.50.30), tenemos acceso:

Conclusiones:


En la prctica se concluye que el uso de NAT es efectivo para aplicaciones reales como
las de un ISP hacia un cliente, en donde se tiene un nmero reducido de IPs pblicas y
un gran nmero de IPs privadas. Con esto, podemos lograr que las IPs privadas tengan
una salida hacia la red externa.

Adems, se cumplieron con los objetivos de configuracin de la Mquina Virtual en
GNS3, demostrando las capacidades de prueba reales con este programa, el cual nos
es de gran utilidad si queremos probar algo sin entrar en un entorno de produccin.

Referencias:


Tutorial de como conectar una Mquina Virtual a GNS3 en Mac OS:
https://www.youtube.com/watch?v=XJ0PIcBNNAQ

Tutorial de como agregar la mquina Mac fsica a GNS3
https://www.youtube.com/watch?v=Cstk7CVLw0Y

Crear interfaces bridge en Mac OS:


http://superuser.com/questions/42249/how-to-bridge-two-ethernet-ports-on-mac-
os-x

Gestin de bridge en FreeBSD (funciona en Mac OS)
http://blog.up-link.ro/freebsd-how-to-create-a-network-bridge/

Agregando rutas en Mac OS:
http://blog.remibergsma.com/2012/03/04/howto-quickly-add-a-route-in-mac-osx/