jueves, 13 de enero de 2011

Redirección múltiple de puertos en Cisco

Normalmente los routers de Cisco no están diseñados para hacer un NATeo intensivo por lo que si se desea definir un rango de por ejemplo 30 puertos se tendría que hacer una entrada NAT por cada puerto manualmente, en otras palabras, 30 entradas. Además de ser tedioso tendría un coste de CPU y memoria elevadísimo.

No obstante existe un truco para hacer un NAT de un rango de puertos: creando una 'lista' de ips rotatorias para NATear junto a una lista de acceso con el rango de puertos deseado.

Primero creamos la lista de direcciones rotatorias. Como solo queremos que redirija estos puertos a una IP, la IP de inicio será la misma que la final:

ip nat pool server 192.168.0.10 192.168.0.10 netmask 255.255.255.0 type rotary
En segundo lugar creamos la lista de acceso con los rangos que queremos redirigir:
access-list 100 remark SERVER_FORWARDS
access-list 100 permit tcp any any range 1 1024
access-list 100 permit udp any any eq 5060
Y por último realizamos el NATeo asociando la lista de acceso que incluye los rangos de los puertos con la lista de IPs de destino (una en nuestro caso):
ip nat inside destination list 100 pool server