Seguridad y Redes

Tips & Video Tutoriales, Wifislax, VMware, GNS3, VirtualBox, CCNA, Cisco Routers & Switches, [ Programming ]

Configuración de OSPF en un Cisco 3725 (IOS) y Nexus 7000 (NX-OS)

A continuación, se muestra un ejemplo de configuración básica de OSPF entre un Switch Nexus y un Router 3725. Para habilitar OSPF en el Cisco Nexus se realiza desde la configuración de la interfaz.

Topologia en GNS3.

Habilitamos OSPF
N7K-2(config)# feature ospf
Habilitamos el proceso de OSPF
N7K-2(config)# router ospf 10
N7K-2(config-router)# router-id 10.10.10.1
Habilitamos OSPF en la interface en particular
N7K-2(config)# int ethernet 2/2
N7K-2(config-if)# ip address 10.10.10.1 255.255.255.0
N7K-2(config-if)# no shutdown
N7K-2(config-if)# ip router ospf 10 area 0
N7K-2(config-if)# end
N7K-2#
Configuración de OSPF en el Cisco 3725.
ESW1(config)#interface fastEthernet0/1
ESW1(config-if)#ip add 10.10.10.2 255.255.255.0
ESW1(config-if)#no shutdown

ESW1(config)#interface fastEthernet0/0
ESW1(config-if)#ip add 10.4.4.4 255.255.255.0
ESW1(config-if)#no shutdown
ESW1(config-if)#exit

ESW1(config)#interface loopback2
ESW1(config-if)#ip address 10.3.3.3 255.255.255.0
ESW1(config-if)#end

ESW1#show ip int brief
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            10.4.4.4        YES manual up                    up      
FastEthernet0/1            10.10.10.2      YES manual up                    up      
FastEthernet1/0            unassigned      YES unset  up                    down    
FastEthernet1/14           unassigned      YES unset  up                    down    
FastEthernet1/15           unassigned      YES unset  up                    down    
Vlan1                      unassigned      YES unset  up                    down    
Loopback1                  10.2.2.2        YES manual up                    up      
Loopback2                  10.3.3.3        YES manual up                    up      

ESW1(config)#router ospf 10
ESW1(config-router)#network 10.10.10.0 0.0.0.255 area 0
*Mar  1 00:06:10.307: %OSPF-5-ADJCHG: Process 10, Nbr 10.10.10.1 on FastEthernet0/1 from LOADING to FULL, Loading Done
ESW1(config-router)#networ 10.4.4.0 0.0.0.255 area 0
ESW1(config-router)#

Verificación
ESW1#show ip ospf neighbor 

Neighbor ID     Pri   State           Dead Time   Address         Interface
10.10.10.1        1   FULL/BDR        00:00:33    10.10.10.1      FastEthernet0/1
ESW1


ESW1#show cdp neighbors detail 
-------------------------
Device ID: N7K-2(Nexus-Switch)
Entry address(es): 
  IP address: 10.10.10.1
Platform: Nexus-Switch,  Capabilities: Router Switch IGMP 
Interface: FastEthernet0/1,  Port ID (outgoing port): Ethernet2/2
Holdtime : 165 sec

Version :
Cisco Nexus Operating System (NX-OS) Software, Version 5.1(2)

advertisement version: 2
Duplex: full

ESW1#
Verificación en el Cisco Nexus
N7K-2# show ip route
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]

10.4.4.0/24, ubest/mbest: 1/0
    *via 10.10.10.2, Eth2/2, [110/50], 00:00:11, ospf-10, intra
10.10.10.0/24, ubest/mbest: 1/0, attached
    *via 10.10.10.1, Eth2/2, [0/0], 00:01:52, direct
10.10.10.1/32, ubest/mbest: 1/0, attached
    *via 10.10.10.1, Eth2/2, [0/0], 00:01:52, local
N7K-2#

N7K-2# show ip ospf neighbors
 OSPF Process ID 10 VRF default
 Total number of neighbors: 1
 Neighbor ID     Pri State            Up Time  Address         Interface
 10.3.3.3          1 FULL/DR          00:00:09 10.10.10.2      Eth2/2


N7K-2# ping 10.10.10.2
PING 10.10.10.2 (10.10.10.2): 56 data bytes
64 bytes from 10.10.10.2: icmp_seq=0 ttl=254 time=10 ms
64 bytes from 10.10.10.2: icmp_seq=1 ttl=254 time=10 ms
64 bytes from 10.10.10.2: icmp_seq=2 ttl=254 time=10 ms
64 bytes from 10.10.10.2: icmp_seq=3 ttl=254 time=10 ms
64 bytes from 10.10.10.2: icmp_seq=4 ttl=254 time=10 ms

--- 10.10.10.2 ping statistics ---
5 packets transmitted, 5 packets received, 0.00% packet loss
round-trip min/avg/max = 10/10/10 ms
N7K-2#

N7K-2# ping 10.4.4.4
PING 10.4.4.4 (10.4.4.4): 56 data bytes
64 bytes from 10.4.4.4: icmp_seq=0 ttl=254 time=10 ms
64 bytes from 10.4.4.4: icmp_seq=1 ttl=254 time=10 ms
64 bytes from 10.4.4.4: icmp_seq=2 ttl=254 time=0 ms
64 bytes from 10.4.4.4: icmp_seq=3 ttl=254 time=0 ms
64 bytes from 10.4.4.4: icmp_seq=4 ttl=254 time=10 ms

--- 10.4.4.4 ping statistics ---
5 packets transmitted, 5 packets received, 0.00% packet loss
round-trip min/avg/max = 0/6/10 ms
N7K-2#

NetFlow - Monitorea los equipos de tu red

NetFlow es un protocolo de red desarrollado por Cisco Systems para recolectar información sobre tráfico IP. Netflow se ha convertido en un estándar de la industria para monitorización de tráfico de red, y actualmente está soportado para varias plataformas además de Cisco IOS y NXOS, como por ejemplo en dispositivos de fabricantes como Juniper, Enterasys Switches, y en sistemas operativos como Linux, FreeBSD, NetBSD y OpenBSD.

Existen varias diferencias entre la versión de implementación del Netflow original, por lo que algunas versiones incorporan algunos datos más, pero en líneas generales el Netflow básico envía al menos la siguiente información.
  • Dirección IP de origen.
  • Dirección IP de destino.
  • Puerto UDP o TCP de origen.
  • Puerto UDP o TCP de destino.
  • Protocolo IP.
  • Interfaz (SNMP ifIndex).
  • Tipo de servicio IP.

R1#configure terminal
R1(config)#interface fastethernet0/0
R1(config-if)#ip address 10.10.10.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#end
R1#

Configuración de SNMP y NetFlow
R1(config)#ip access-list standard ACL
R1(config-std-nacl)#permit host 10.10.10.10
R1(config-std-nacl)#exit

R1(config)#hostname RouterLocal

RouterLocal(config)#snmp-server community secreto rw ACL
RouterLocal(config)#snmp-server location Mexico
RouterLocal(config)#snmp-server contact delfirosales

RouterLocal(config)#interface fastEthernet0/0
RouterLocal(config-if)#ip flow egress 
RouterLocal(config-if)#ip flow ingress 
RouterLocal(config-if)#exit

RouterLocal(config)#ip flow-export version 9
RouterLocal(config)#ip flow-export destination 10.10.10.10 99
RouterLocal(config)#ip flow-export source fastEthernet0/0

RouterLocal(config)#service timestamps 
RouterLocal(config)#logging 10.10.10.10
RouterLocal(config)#ip domain name delfirosales.com
Comandos shows
RouterLocal#show ip cache flow
RouterLocal#show ip flow export
RouterLocal#show ip flow interface
RouterLocal#debug ip flow export


Configuración del NetFlow Collector

Hay varios colectores disponibles, algunos licenciados y otros libres, dependiendo de lo que necesites, con cualquier collector te será muy fácil generar el reporte de los top 10 terminales que consumen ancho de banda. Para esta practica se utilizo Real-Time NetFlow Analyzer de SolarisWinds para concentrar la información, analizarla y generar resportes.




Configuración de NTP con Autenticacion en un Router Cisco

NTP son las siglas de Network Time Protocol el cual nos permite sincronizar los dispositivos que funcionan en una red. Esto es muy importante ya que hay una gran variedad de servicios de red que se basan en la correcta sincronización de horarios de los servidores.

Para esto, el equipo realiza una referencia a un servidor de horario, que puede comparar y ajustar su fecha y la hora con otro servidor NTP publico en internet. El protocolo NTP utiliza el puerto UDP 123 para establecer la conexión con los servidores de horario. Es recomendable e importante configurar primero el protocolo NTP en los equipos de la nuestra red antes de implementar el protocolo estándar Syslog centralizado.

NTP en GNS3.

Configuración de un router Cisco para que sincronice la fecha y hora con un servidor de NTP público en internet.

Primero verificamos conectividad con el servidor NTP público en internet.
R1#ping pool.ntp.org
Translating "pool.ntp.org"...domain server (192.168.137.1) [OK]
 
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 132.248.30.3, timeout is 2 seconds:
!!!.!
Success rate is 80 percent (4/5), round-trip min/avg/max = 76/98/120 ms
R1#

Verificando conexión.
Configuración del Cliente NTP en R1.
R1#configure terminal
R1(config)#ntp server pool.ntp.org
Translating "pool.ntp.org"...domain server (192.168.137.1) [OK]
R1(config)#

Verificación.
R1#show clock detail
07:17:15.480 UTC Sun Mar 29 2015
Time source is NTP
 
R1#show ntp status
R1#show ntp associations


Verificación de NTP y comandos adicionales del estado de NTP.

Configuración en R2.
R2#configure terminal
R2(config)#ntp server 10.10.10.1
R2(config)#end
R2#
*Mar  1 00:14:15.523: %SYS-5-CONFIG_I: Configured from console by console
 
R2#show clock detail
.07:22:29.536 UTC Sun Mar 29 2015
Time source is NTP
R2#

NTP con Autenticación
R1#configure terminal
R1(config)#ntp authentication-key 1 md5 cisco
R1(config)#ntp authenticate
R1(config)#ntp trusted-key 1

Configuración de R2 como cliente NTP con autenticación.
R2#configure terminal
R2(config)#ntp authenticate
R2(config)#ntp authentication-key 1 md5 cisco
R2(config)#ntp trusted-key 1
R2(config)#ntp server 10.10.10.1 key 1

Syslog Server: Kiwi Syslog - Configuracion de un router Cisco

Si queremos enviar los mensajes de log a un servidor de Syslog (Syslog server) para poder administrar los logs del dispositivo de la red de una forma mas centralizada, podemos enviar los logs que se generan y para que los mensajes se envíen a un servidor.

Es importante que antes de implementar el almacenamiento del log en un Syslog Server, todos los dispositivos de la red estén sincronizados con la misma hora, día y fecha. Para esto debemos de configurar el protocolo Network Time Protocol (NTP) en los switches y routers. Si no sabes realizar esta configuración podras consultar la siguiente publicación sobre NTP Server.

Syslog Server en GNS3.

Para configurar a que el router envíe los logs al Syslog Server debemos ingresar el siguiente comando, loggin host ip_servidor o el comando loggin ip_servidor, indicando la dirección IP del Servidor de Syslog.

Router(config)#logging host 10.10.20.10

10.10.20.10 es el servidor de log.

Podemos limitar la cantidad de mensajes enviados al servidor syslog, según la gravedad con el comando logging trap para establecer el nivel de detalle de la información que será registrada en el log. En este caso es de nivel 7 (debugging) que es el nivel más alto. Niveles de mensajes de Syslog.

R1(config)# logging trap 7

Otro comando importante es el service timestamps, esta configuración es muy importante cuando estemos configurando el loggin porque con esto vamos habilitar que aparezcan los logs con la fecha y la hora en que se genera el log, por default no está habilitado y básicamente lo que hace es que si te pone el log pero no te dice a qué hora fue generado el log, entonces este comando es importante configurarlo en el router.

Router(config)#service timestamps

La segunda parte del procedimiento es efectivamente instalar un software servidor de Syslog en una PC Windows o Linux. Kiwi Syslog Server para Windows es una excelente opción, fácil de instalar y configurar.

Verificacion

R1#debug ip icmp 
ICMP packet debugging is on
R1#

R1#ping 10.10.20.10
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.20.10, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/50/148 ms
R1#

00:09:28: ICMP: echo reply rcvd, src 10.10.20.10, dst 10.10.20.1
00:09:28: ICMP: echo reply rcvd, src 10.10.20.10, dst 10.10.20.1
00:09:28: ICMP: echo reply rcvd, src 10.10.20.10, dst 10.10.20.1
00:09:28: ICMP: echo reply rcvd, src 10.10.20.10, dst 10.10.20.1
00:09:28: ICMP: echo reply rcvd, src 10.10.20.10, dst 10.10.20.1

R1#conf t
R1(config)#exit
R1#
*Mar  1 00:09:35.999: %SYS-5-CONFIG_I: Configured from console by console
R1#


Kiwi Syslog en Windows.

Así de simple podemos centralizar la administración del log en nuestra red y mejorar significativamente la respuesta a un posible incidente o ataque de seguridad que tengamos que enfrentar.

Syslog

El Syslog es enviar mensajes de información que puede ser a un router o a un servidor externo.

¿Para que nos va servir el Syslog?

El Syslog nos puede servir para sabes cual es la naturaleza de alguna ataque o amenaza de seguridad. También nos sirve de bastante para Troubleshooting y podemos correlacionar cualquier tipo de eventos, como por ejemplo.
  • Un intento de acceso con contraseña equivocada
  • Un acceso correcto al sistema
  • Anomalías: variaciones en el funcionamiento normal del sistema
  • Alertas cuando ocurre alguna condición especial
  • Información sobre las actividades del sistema operativo
  • Errores del hardware o el software
Por lo tanto, es vital la administración adecuada de esta información para mantener corriendo de manera estable una red y principalmente para poder mitigar las amenazas de seguridad a las que nos podamos ver expuestos.

Los logs también se pueden enviar a la consola (por default)
  • Al Logging Buffer del Router (por default)
  • A las Líneas VTY (Ingresando el comando terminal monitor)
  • A un Servidor de SNMP como puede ser un Cisco Works
  • A un servidor de Syslog.
Existe un Cliente y Servidor de Syslog.
  • El Syslog Client es el que envía los logs, es decir un router puede ser un cliente de Syslog.
  • Servidor Syslog es un aquel servidor que guarda todos los logs.
Syslog Levels.

La figura anterior muestra los niveles de Syslog que se tienen.
  • Nivel 0 son las Emergencias: Es cuando hay un error severo que hace que el sistema no sea usable
  • Nivel 1 son Alertas: Significa que requieren atención inmediata.
  • Nivel 2 Critica: Requiere atención para prevenir que haya interrupción en el servicio.
  • Nivel 3 Errores: Condiciones de errores en el Sistema.
  • Nivel 4 Warnings: Es cuando algo en específico falla.
  • Nivel 5 Notificaciones: Alerta sobre los cambios de estados.
  • Nivel 6 Información: Información detallada acerca de la operación normal.
  • Nivel 7 Debugging: Información detallada, comandos de debug, usualmente puede servir simplemente para troubleshooting.
Es importante saber que existen estos 8 niveles, que significa cada uno y como se llaman.

Iniciando un router se presentan varios log, ejemplo.
Press RETURN to get started!
*Mar  1 00:00:07.059: %LINEPROTO-5-UPDOWN: Line protocol on Interface VoIP-Null0, changed state to up
5 = Nivel 5
*Mar  1 00:00:07.059: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar  1 00:00:07.063: %LINK-3-UPDOWN: Interface FastEthernet0/1, changed state to up
3 = Nivel 3
*Mar  1 00:00:07.287: %SYS-5-CONFIG_I: Configured from memory by console
*Mar  1 00:00:07.875: %SYS-5-RESTART: System restarted --
Cisco IOS Software, 3600 Software (C3660-IK9O3S-M), Version 12.4(13b), RELEASE SOFTWARE (fc3)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2007 by Cisco Systems, Inc.
Compiled Tue 24-Apr-07 21:18 by prod_rel_team
*Mar  1 00:00:07.887: %SNMP-5-COLDSTART: SNMP agent on host Router is undergoing a cold start
*Mar  1 00:00:08.059: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to down
*Mar  1 00:00:09.299: %LINK-5-CHANGED: Interface FastEthernet0/1, changed state to administratively down

En el IOS de Cisco por default está configurado el log en la consola.

Passive Interface

Otro caracteristica que le podemos configurar a EIGRP es lo que se llama interface pasiva (passive interface).

Una interface pasiva lo que hace es que no envía ningún tipo de paquete, ni hellos ni cualquier otro tipos de paquetes. Es decir que por esa interfaces no podremos tener neighbors o vecinos pero si anunciara las redes de dichas interfaces.

¿Cuándo se utiliza este tipo de interfaces?
  • Para suprimir tráfico de actualización innecesario, por ejemplo, cuando una interfaz es una interfaz LAN, sin otros routers conectados.
  • Para aumentar los controles de seguridad, por ejemplo, para evitar que dispositivos desconocidos de routing no autorizados reciban actualizaciones de EIGRP.

Observando la topología sería buena idea configurar como interfaces pasivas las áreas en color rojo, porque en esas interfaces no tendremos ningún neighbor pero si vamos anunciar las redes de dichas interfaces.

Configuración de Passive Interface.

R5#configure terminal
R5(config)#router eigrp 10
R5(config-router)#passive-interface ethernet 0/1

R2#configure terminal 
R2(config)#router eigrp 10
R2(config-router)#passive-interface fastEthernet 1/0

Hemos configurado las interfaces pasivas, desde R3 podremos seguir viendo las redes y seguiremos teniendo conectividad.

Configuración de EIGRP

Las mínimas opciones que podemos configurar para habilitar EIGRP son las siguientes.
  1. Proceso de EIGRP
  2. Sistema Autonomo
  3. Habilitar EIGRP en las interfaces
Topologia a configurar.

Configurar la parte del direccionamiento.

Configuración de R2
R2#configure terminal
R2(config)#interface fastEthernet1/0
R2(config-if)#ip address 192.168.2.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#exit

R2(config)#interface serial2/1
R2(config-if)#ip address 192.168.0.2 255.255.255.252
R2(config-if)#no shutdown
R2(config-if)#end
R2#

Cofiguración de R3
R3#configure terminal 
R3(config)#interface serial1/3
R3(config-if)#ip address 192.168.0.1 255.255.255.252
R3(config-if)#no shutdown
R3(config-if)#exit

R3(config)#interface ethernet0/0
R3(config-if)#ip address 192.168.35.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#end
R3# 

Configuracón de R5
R5#configure terminal 
R5(config)#interface ethernet0/0
R5(config-if)#ip address 192.168.35.5 255.255.255.0
R5(config-if)#no shutdown
R5(config-if)#exit

R5(config)#interface ethernet0/1
R5(config-if)#ip address 192.168.5.5 255.255.255.0
R5(config-if)#no shutdown
R5(config-if)#end
R5#

Si ingresamos el comando show ip route en R2, podremos ver lo siguiente.


Si realizamos un ping a 192.168.35.3 no va responder ya que no tenemos una ruta hacia él. Podemos configurar rutas estáticas, pero en este caso vamos a configurar EIGRP.

R2#ping 192.168.35.3
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.35.3, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)

Pasos para configurar EIGRP

Entrar a configuración global.
R2#configure terminal

Ingresar el comando router eigrp sistema_autonomo. Podemos asignarle un número de AS que va del 1 al 65535.
R2(config)#router eigrp ?
  <1-65535>  Autonomous system number

R2(config)#router eigrp 10
R2(config-router)#no auto-summary

El siguiente paso es indicar en que interfaces va estar corriendo EIGRP. Esto se realiza con el comando network.

R2(config-router)#network 192.168.2.0 0.0.0.255
R2(config-router)#network 192.168.0.0 0.0.0.3

Con este estamos indicando que estamos corriendo EIGRP en ambas interfaces.

Configuración de EIGRP en las interfaces de R3.
R3#configure terminal
R3(config)#router eigrp 10
R3(config-router)#no auto-summary
R3(config-router)#network 192.168.0.0 0.0.0.3
R3(config-router)#network 192.168.35.0 0.0.0.255

*Mar  1 00:01:59.599: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 10: Neighbor 192.168.0.2 (Serial1/3) is up: new adjacency

Podemos observar que se ha creado una adyacencia.

Como ya tenemos corriendo EIGRP en R3 con R2 podemos ingresar el siguiente comando, el cual nos va listar los vecinos o neighbors que tenemos.

R3#show ip eigrp neighbors


R3#show ip route eigrp


Configuración de EIGRP en R5.

Si primero hacemos un show ip route en R5, veremos las redes que están solamente conectadas.

R5#configure terminal 
R5(config)#router eigrp 10
R3(config-router)#no auto-summary
R5(config-router)#network 192.168.35.0 0.0.0.255 
R5(config-router)#network 192.168.5.5 0.0.0.0 

AAA en Routers & Switches Cisco

Las principales funciones de AAA son.
  • Autenticación: comprueba que los usuarios y administradores sean quienes dicen ser.
  • Autorización: después de la autenticar al usuario o al administrador, decide a qué recursos puede acceder o qué operaciones puede realizar.
  • Registro (Accounting and Auditing): guarda el instante temporal en el que se efectúan las operaciones y acceden a los recursos.
Los Routers y Switches Cisco manejan AAA, de hecho también los Firewalls de Cisco pueden manejar AAA, los concentradores de VPN pueden manejar AAA, los Access Point pueden manejar AAA pero para este examen estamos viendo nada más los Routers y Switches.

Lo hay de tres maneras:

Cisco Secure ACS Solution Engine: Este es un equipo que contiene CSA, este casi no se usa en la vida real.

Cisco Secure Access Control Server (ACS): Se le conoce como ACS y este es el que se usa bastante en la vida real y es el que vamos a ver como se configura pero nada más la parte del router no la parte en si del servidor. El Router o el NAS es el que tiene contacto con el ACS en este caso el NAS puede ser un Router, puede ser un Switch, un Firewall, un concentrador de VPN. Entonces el router o NAS contacta a la base de datos externa el Cisco Secure ACS.

Self-contained AAA: Se le conoce también como Autenticacion Local y esto quiere decir que el Router no necesita de un equipo externo como el ACS para que pueda funcionar como AAA y simplemente usa la base de datos local de usuarios con contraseña para tener los servicios de AAA.

¿Cuáles son los servicios más comunes de AAA?
  • Puerto de Consola
  • Puerto Auxiliar
  • Telnet
  • SSH
  • HTTP
  • HTTPS
  • VPNs
  • Wireless
Podemos proteger todo el acceso al Router, es decir si por ejemplo queremos accesar al router por CCP ya sea por HTTP o HTTPS podemos usar AAA, si queremos entrar al router por Telnet y SSH se puede proteger con AAA, o de hecho si queremos conectarnos directamente a los puertos de consola y auxiliar podemos protegerlos con AAA.

También para los usuarios que entran por medio de VPN a nuestra red, puede ser controlado ese acceso por AAA, nuestros usuarios de Wireless se les puede pedir nombre de usuario y password para entrar a la red Wireless y este también puede estar con AAA. Entonces como podemos ver hay muchas opciones en los que AAA puede entrar en juego.

Configuración de AAA, Autenticacion Local

Vamos a configurar AAA en el Router usando Autenticacion Local, es decir sin un Servidor ACS o ningún servidor externo. Para configurar AAA vamos a realizarlo paso a paso.
  1. La primera es entrar en Modo Privilegiado
  2. La segunda es habilitar en modo global AAA
  3. Configurar las Listas de Autenticación que se les conoce como Method List
  4. Después configurar Autorización
  5. Configurar el Accounting
  6. Por ultimo verificar nuestra configuración
El primero paso para configurar AAA es habilitarlo de manera global e indicarle que la Autenticación sea Local.

Router#configure terminal
Router(config)#aaa new-model
Router(config)#aaa authentication ?
  arap             Set authentication lists for arap.
  attempts         Set the maximum number of authentication attempts
  banner           Message to use when starting login/authentication.
  dot1x            Set authentication lists for IEEE 802.1x.
  enable           Set authentication list for enable.
  eou              Set authentication lists for EAPoUDP
  fail-message     Message to use for failed login/authentication.
  login            Set authentication lists for logins.
  password-prompt  Text to use when prompting for a password
  ppp              Set authentication lists for ppp.
  sgbp             Set authentication lists for sgbp.
  username-prompt  Text to use when prompting for a username

Con el signo de interrogacion podemos ver todo lo que podemos configurar con AAA.

  • attempts: Cuantas veces o numero maximo de autentications queremos preguntarle a un usuario y password.
  • banner: Podemos configurarle un Banner.
  • enable: Podemos autenticar el enable
  • fail-message: Cual es el mensaje que se debe mostrar si la autenticación falla
  • Login: 
  • password-prompt: Lo mismo para el password, cual es el texto que quiero que diga cuando salga el password.
  • ppp: Autenticar ppp, en el caso de que si queremos autenticar a alguien que se conecte por ppp, esto se usaba mucho cuando eran por modem.
  • username-prompt: Si queremos cambiar en lugar de preguntar un username y password cambiarle a que diga usuario y contraseña por ejemplo.
Por ejemplo nosotros queremos autenticar el login, entonces le vamos a indicar que la Autenticación va hacer login, Luego le indicaremos que sea desde la Base de datos Local. Para esto ingremos el siguiente comando.

Router(config)#aaa authentication login default local

Con esto estamos indicando que la autenticación por default es la base de datos local. Ahora si verificamos Accediendo por telnet al Router.

User Access Verification
Username: delfi
Password: cisco
Router>enable
% Error in authentication.
Router>

Si le tratamos de ingresar enable, envía un mensaje de error en la Autenticación porque el enable no está dado de alta. Así que lo damos de alta el enable desde configuracion global.

Router(config)#enable secret cisco

Volvemos verificar ingresando nuevamente el comando enable.

Router>en
Password:
Router#

Autenticación, utilizando la Base de Datos Local

Autenticar en el Router mediante un Username y Password 
Lo que vamos a ver ahora es que a la hora de Autenticarnos en el Router nos pida el ingreso de nombre de usuario y contraseña.

El primer paso es definir desde configuración global el username y el password.
Router#configure terminal
Router(config)#username delfirosales password cisco

Con esto ya hemos creado un nombre de usuario con su respectiva contraseña. Ahora tenemos que indicarle al router que autentique con un username y un password. Esto se hace con el commando login local. En lugar de usar el commando login, vamos usar el login local.

Habilitar Login local para la Linea de Consola

Router(config)#line console 0
Router(config-line)#login local

Con esto estamos indicándole al router que ya no le haga caso al password configurado en consola, si no que busque la base de datos local de usuario y password.

Verificamos
User Access Verification

Username: delfirosales
Password:
Router>

Vemos que ahora nos pide un usuario y password desde consola.

Habilitar Login local en las Lineas VTY

Router#configure terminal
Router(config)#line vty 0 4
Router(config-line)#login local
Router(config-line)#exit
Router(config)#

Verificamos Telnet

Passwords en los Routers Cisco

¿Que tipo de Passwords se pueden configurar en los Routers Cisco? 
  • Console 
  • AUX 
  • VTY 
  • HTTP/HTTPS 
  • Enable secret 
  • Enable password
¿Cuales son las mejores practicas para un password que si sea fuerte, que si sea seguro? 
  • Por lo menos debe de tener 10 caracteres 
  • Usar minúsculas, mayúsculas, números y caracteres especiales 
  • Que no sea una palabra común, es decir que no esté en un diccionario 
  • Debemos de cambiar el password de manera periódica. Seria una muy buena idea es de que si tenemos una política de seguridad por escrito que ahí se mencione que tan seguido se debe de cambiar el password y que realmente se haga. 
Configurando Password en los Routers Cisco

Confiurar Password de Consola 

Router#configure terminal
Router(config)#line console 0
Router(config-line)#password console
Router(config-line)#login
Router(config-line)#exit

Configurar Password de AUX 

Router#configure terminal
Router(config)#line aux 0
Router(config-line)#password passaux
Router(config-line)#login
Router(config-line)#exit

Configurar Password en las Lineas VTY 

Router#configure terminal
Router(config)#line vty 0 4
Router(config-line)#password vty
Router(config-line)#login

Si en estos momentos vemos la configuración con el comando show running-config.

Router#show running-config
Building configuration...
!
line con 0
exec-timeout 0 0
password console
logging synchronous
login
line aux 0
exec-timeout 0 0
privilege level 15
password passaux
logging synchronous
login
line vty 0 4
password vty
login
!

Vemos los passwords tal cual. Esta manera de guardar las contraseñas es muy insegura ya que se pueden ver. Para esto Cisco tiene una manera de encriptar los passwords, que por cierto no es muy segura, el comando se llama service password-encryption

Configurar el service password-encryption 

Router#configure terminal
Router(config)#service password-encryption
Router(config)#exit

Si ahora le revisamos con un show running-config, veremos los passwords encriptados, pero tal como se ha mencionado esta encriptacion no es muy segura.

Router#show running-config
Building configuration...
!
line con 0
exec-timeout 0 0
password 7 02050B5518090324
logging synchronous
login
line aux 0
exec-timeout 0 0
privilege level 15
password 7 140713181F053F33
logging synchronous
login
line vty 0 4
password 7 08375857
login
!

Cuando veamos en la configuración password 7 lo que sigue significa que esta encriptado y tal como se menciona, esta encriptacion no es segura. Podemos descifrar el password con cualquier herramienta que podamos encontrar en google, como de la pagina Packetlife.net.


Algo importante que debemos de saber es si quitamos el service password-encryption (no service password-encryption).

Router(config)#no service password-encryption

Y le ponemos de nuevo un show running-config

Router#show running-config
Building configuration...
!
line con 0
exec-timeout 0 0
password 7 02050B5518090324
logging synchronous
login
line aux 0
exec-timeout 0 0
privilege level 15
password 7 140713181F053F33
logging synchronous
login
line vty 0 4
password 7 08375857
login
!

Vamos a ver que los deja encriptados. Es bien imporante el entender que si vemos que dice password 7y lo que sigue esta encriptado. Si nosotros copiamos password 7 08375857 y lo pegamos en otro Router el password que le estamos poniendo  no es 08375857, es el que esta encriptado porque le estamos poniendo un 7. Si le pusieramos password 0 (el 0 significa que lo que sigue no esta encriptado).

Habilitar enable password 

Router#configure terminal
Router(config)#enable password passenable

Habilitar enable secret 

Router#configure terminal
Router(config)#enable secret cisco2

Veamos la configuracion

Router#show running-config
Building configuration...
!
enable secret 5 $1$SfXz$VTQcZ6eOOVgZCBfvtmMBC0
enable password passenable
!

Podemos ver que el enable password tiene como contraseña passenable y el enable secret tiene un Hash de MD5. Cuando configuramos el enable secret ingrasamos cisco2 y automaticamente puso un 5 y un hash de MD5. Cualquier password que se ingrese automaticamente lo va convertir en un hasd de MD5 con valor de 128 bits aunque no tengamos habilitado el service password-encryption. Si en alguna configuracion ven enable secret 5 lo que sigue no es el password, es el hash de MD5.

Configuración de Cisco IOS Zone - Based Policy Firewall

Una de las principales diferencias entre un firewall usando CBAC y ZBPFW (zone based Firewall) es el uso de zonas de seguridad. Estas zonas separan las áreas específicas de seguridad dentro de una red. Cada organización tiene sus propias divisiones específicas de seguridad que deben ser definidos antes de la implementación de un ZBPFW.

Topologia de ejemplo para la Configuracion del IOS Zone Firewall.

Lo primero es crear el Par de Zonas, desde configuración global.
Creamos el inside security zona con el nombre de inside
Creamos el otra zona con el nombre de Outside

Router#configure terminal 
Router(config)#zone security inside
Router(config-sec-zone)#exit
Router(config)#zone security outside
Router(config-sec-zone)#exit

Creamos un class map con el nombre de MI-CLASS-MAP, luego los Matchs de ICMP y telnet.

Router(config)#class-map type inspect match-any MI-CLASS-MAP
Router(config-cmap)#match protocol telnet
Router(config-cmap)#match protocol icmp  
Router(config-cmap)#exit

Creamos una politica de servicio con el nombre de MI-POLITICA, identificamos el class map MI-CLASS-MAP Inspeccionamos todo el trafico.

Router(config)#policy-map type inspect MI-POLITICA
Router(config-pmap)#class type inspect MI-CLASS-MAP
Router(config-pmap-c)#inspect 
Router(config-pmap-c)#exit
Router(config-pmap)#exit

Creamos una Par de Zona o Zone pair identicando la zona fuente (inside) y el destino (outside). Asignamos la política de servicio MI-POLITICA para todo el trafico que pasa del origen al destino.

Router(config)#zone-pair security IN-TO-OUT source inside destination outside
Router(config-sec-zone-pair)#service-policy type inspect MI-POLITICA
Router(config-sec-zone-pair)#exit
Router(config)#

Asignamos las interfaces a su respectivas zonas.

Router(config)#interface fastEthernet0/0 
Router(config-if)#description Es la Zona Inside
Router(config-if)#zone-member security inside
Router(config-if)#exit
Router(config)#interface fastEthernet0/1
Router(config-if)#description Es la Zona Outside
Router(config-if)#zone-member security outside
Router(config-if)#exit
Router(config)#

Verificación desde el Cliente o Inside.

Video - Implementación de Cisco IOS Zone-Based Firewall usando CCP

Qemu & GNS3 en Ubuntu 12.10

Primero instalar algunas aplicaciones necesarias.
root@cisco:/home/delfi# apt-get update
root@cisco:/home/delfi# apt-get install libpcap-dev
root@cisco:/home/delfi# apt-get install build-essential libssl-dev uuid-dev zlib1g-dev libncurses5-dev libx11-dev

Segundo, creamos carpetas y asignamos permisos

root@cisco:/home/delfi# mkdir GNS3
root@cisco:/home/delfi# chmod 777 GNS3
root@cisco:/home/delfi# cd GNS3
root@cisco:/home/delfi/GNS3# mkdir Dynamips
root@cisco:/home/delfi/GNS3# mkdir IOS
root@cisco:/home/delfi/GNS3# mkdir Proyectos
root@cisco:/home/delfi/GNS3# mkdir Capturas
root@cisco:/home/delfi/GNS3# mkdir working
root@cisco:/home/delfi/GNS3# mkdir qemu
root@cisco:/home/delfi/GNS3# chmod 777 Dynamips
root@cisco:/home/delfi/GNS3# chmod 777 IOS
root@cisco:/home/delfi/GNS3# chmod 777 Proyectos
root@cisco:/home/delfi/GNS3# chmod 777 Capturas
root@cisco:/home/delfi/GNS3# chmod 777 working
root@cisco:/home/delfi/GNS3# chmod 777 qemu

Luego descargamos GNS3 v0.8.3.1 en su versión mas reciente, descomprimos y asignamos permisos.
root@cisco:/home/delfi/GNS3# wget http://voxel.dl.sourceforge.net/project/gns-3/GNS3/0.8.3.1/GNS3-0.8.3.1-src.tar.gz
root@cisco:/home/delfi/GNS3# tar -xvzf GNS3-0.8.3.1-src.tar.gz
root@cisco:/home/delfi/GNS3# chmod 777 GNS3-0.8.3.1-src
root@cisco:/home/delfi/GNS3# cd GNS3-0.8.3.1-src
root@cisco:/home/delfi/GNS3/GNS3-0.8.3.1-src# chmod 777 *.*
root@cisco:/home/delfi/GNS3/GNS3-0.8.3.1-src# cd ..
root@cisco:/home/delfi/GNS3# ls
Capturas  Dynamips  GNS3-0.8.3.1-src  GNS3-0.8.3.1-src.tar.gz  IOS  Proyectos  qemu

Realizamos lo mismo con Dynamips.
root@cisco:/home/delfi/GNS3# cd Dynamips/
root@cisco:/home/delfi/GNS3/Dynamips# wget http://voxel.dl.sourceforge.net/project/gns-3/Dynamips/0.2.8-RC3-community/dynamips-0.2.8-RC3-community-x86.bin
root@cisco:/home/delfi/GNS3/Dynamips# chmod 77 dynamips-0.2.8-RC3-community-x86.bin
root@cisco:/home/delfi/GNS3/Dynamips# cd ..
root@cisco:/home/delfi//GNS3# ./gns3

Configuración de Dynamips en GNS3.
Configuración de Qemu
Ahora toca configurar Qemu
root@cisco:/home/delfi/GNS3# cd qemu
root@cisco:/home/delfi/GNS3/qemu# wget http://download.savannah.gnu.org/releases/qemu/qemu-0.11.0.tar.gz
root@cisco:/home/delfi/GNS3/qemu# tar xvzf qemu-0.11.0.tar.gz
root@cisco:/home/delfi/GNS3/qemu# ls
qemu-0.11.0  qemu-0.11.0.tar.gz
root@cisco:/home/delfi/GNS3/qemu# cd qemu-0.11.0
root@cisco:/home/delfi/GNS3/qemu/qemu-0.11.0# wget http://voxel.dl.sourceforge.net/project/gns-3/Qemu/qemu-0.11.0-olive.patch
root@cisco:/home/delfi/GNS3/qemu/qemu-0.11.0# patch -p1 -i qemu-0.11.0-olive.patch
patching file Makefile.target
patching file configure
patching file hw/e1000.c
patching file hw/eepro100.c
patching file net.c
patching file qemu-options.hx
root@cisco:/home/delfi/GNS3/qemu/qemu-0.11.0# ./configure --target-list=i386-softmmu
root@cisco:/home/delfi/GNS3/qemu/qemu-0.11.0# make
root@cisco:/home/delfi/GNS3/qemu/qemu-0.11.0# make install

Averiguamos donde se encuentra qemu y qemu-img con el comando which.
root@cisco:/home/delfi/GNS3/qemu/qemu-0.11.0# which qemu
/usr/local/bin/qemu
root@cisco:/home/delfi/GNS3/qemu/qemu-0.11.0# which qemu-img
/usr/local/bin/qemu-img
root@cisco:/home/delfi/GNS3/qemu/qemu-0.11.0#
Finalmente la configuración de Qemu en GNS3 debe quedar como se muestra en la siguiente imagen.

Configuración de Qemu en GNS3.

Configuración de Linux Microcore en GNS3.

Descargamos Linux Microcore (linux-microcore-3.8.2.img) del siguiente enlace.
http://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/
Una vez que hallamos descargado la imagen, el siguiente paso es abrir GNS3 y dirigirmos al Menú.
Edit > Preferences > Qemu > Qemu Guest

Finalmente quedaría como se muestra a continuación.

Configuración de Linux Microcore en GNS3.


Simple Lab

Arrastramos un Router y Quemu Guest al area de trabajo de GNS3, realizamos las conexiones y luego los inicializamos. Primero le configuramos al Router una dirección IP y habilitamos la interface.
R1#conf t
R1(config)#int f0/0      
R1(config-if)#ip add 192.168.10.1 255.255.255.0
R1(config-if)#no shut
R1(config-if)#end
R1#show ip int brief
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            192.168.10.1    YES manual up                    up    
FastEthernet0/1            unassigned      YES unset  administratively down down  
R1#

Realizamos lo mismo con Linux Microcore.
Micro Core Linux
box login: login[1451]: root login on 'tty1'

Micro Core Linux
box login: root
Password: root

tc@box:~$ sudo su
root@box:~# ifconfig eth0 192.168.10.2 netmask 255.255.255.0 up
root@box:~# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:AB:29:8C:3E:00
          inet addr:192.168.10.2  Bcast:192.168.10.255  Mask:255.255.255.0
          inet6 addr: fe80::2ab:29ff:fe8c:3e00/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:36 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:10278 (10.0 KiB)

Finalmente realizamos una prueba de conectividad.
R1#ping 192.168.10.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.10.2, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 8/11/12 ms
R1#

root@box:~# ping 192.168.10.1
PING 192.168.10.1 (192.168.10.1): 56 data bytes
64 bytes from 192.168.10.1: seq=0 ttl=255 time=13.310 ms
64 bytes from 192.168.10.1: seq=1 ttl=255 time=11.636 ms
64 bytes from 192.168.10.1: seq=2 ttl=255 time=3.861 ms

CCNA Security: GNS3 & Cisco Configuration Professional (CCP)

En la nueva versión del CCNA de Seguridad 640-554 se han agregado los siguientes features.

(1)Describe IPv4 to IPv6 transition
(2)Describe VLAN security
(3)Implement VLANs and trunking
(4)Implement spanning tree
(5)Implement zone-based policy firewall using CCP
(6)Implement the Cisco Adaptive Security Appliance (ASA)
(7)Implement Network Address Translation (NAT) and Port Address Translation (PAT)
(8)Configure Cisco IOS IPS using CCP
(9)Implement Secure Sockets Layer (SSL) VPN using ASA device manager

Se le ha quitado todo lo relacionado con SDM y agregaron Cisco Configuration Professional (CCP). Para configurar CCP en GNS3 debemos realizar los pasos similares a la configuración de SDM.
  1. Agregar un Router.
  2. Agregar una Nube configurada con una interface Loopback.
  3. Crear una cuenta de usuario local en el router con permisos de "nivel 15" permisos (modo privilegiado)
  4. Establer un hostname al router (opcional).
  5. Configurar una interface para conectividad con la interface Loopback
  6. Habilitar el servicio HTTP en el router.
  7. Habilita el servicio HTTPS en el router si la imagen IOS del router soporta cifrado crypto.
  8. Habilitar la autenticación HTTP utilizando la base de datos local.
R1#show ip int brief
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            unassigned      YES unset  administratively down down
FastEthernet0/1            unassigned      YES unset  administratively down down

R1#conf t
R1(config)#int f0/0
R1(config-if)#ip add 192.168.10.1 255.255.255.0
R1(config-if)#no shut
R1(config-if)#end
R1#
*Mar  1 00:00:38.975: %SYS-5-CONFIG_I: Configured from console by console
*Mar  1 00:00:40.347: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar  1 00:00:41.347: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R1#ping 192.168.10.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.10.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms

R1#conf t
R1(config)#username delfirosales privilege 15 secret cisco
R1(config)#ip http server
R1(config)#ip http secure-server
% Generating 1024 bit RSA keys, keys will be non-exportable...[OK]
*Mar  1 00:03:24.239: %SSH-5-ENABLED: SSH 1.99 has been enabled
*Mar  1 00:03:24.431: %PKI-4-NOAUTOSAVE: Configuration was modified.  Issue "write memory" to save new certificate
R1(config)#ip http authentication local   
R1(config)#line vty 0 4
R1(config-line)#privilege level 15
R1(config-line)#transport input ssh telnet
R1(config-line)#login local
R1(config-line)#end
R1#


Video utilizando CCP One-Step Lockdown & Security Audit
http://www.youtube.com/watch?v=UOASz3-NIj8

Frame Relay sin Inverse ARP

Frame Relay sin Inverse ARP. Esto significa que crearemos los mapas manualmente.

Topologia Frame Relay
Lo primero es configurar los mapas.

R1(config-if)#no frame-relay inverse-arp
R1(config-if)#no shutdown
R1(config-if)#frame-relay map ip 192.168.123.2 102 broadcast
R1(config-if)#frame-relay map ip 192.168.123.3 103 broadcast
R1(config-if)#frame-relay map ip 192.168.123.4 104 broadcast

R2#conf t
R2(config)#int s1/0
R2(config-if)#no frame-relay inverse-arp
R2(config-if)#no shutdown
R2(config-if)#frame-relay map ip 192.168.123.1 201 broadcast
R2(config-if)#frame-relay map ip 192.168.123.3 203 broadcast
R2(config-if)#frame-relay map ip 192.168.123.4 204 broadcast
R2(config-if)#

R3#conf t
R3(config)#interface serial1/0
R3(config-if)#no frame-relay inverse-arp
R3(config-if)#no shutdown
R3(config-if)#frame-relay map ip 192.168.123.1 301 broadcast
R3(config-if)#frame-relay map ip 192.168.123.2 302 broadcast
R3(config-if)#frame-relay map ip 192.168.123.4 304 broadcast
R3(config-if)#

R4#conf t
R4(config)#int s1/0
R4(config-if)#no frame-relay inverse-arp
R4(config-if)#no shutdown
R4(config-if)#frame-relay map ip 192.168.123.1 401 broadcast
R4(config-if)#frame-relay map ip 192.168.123.2 402 broadcast
R4(config-if)#frame-relay map ip 192.168.123.3 403 broadcast
R4(config-if)#

R4#show frame map
Serial1/0 (up): ip 192.168.123.1 dlci 401(0x191,0x6410), static, broadcast,
              CISCO, status defined, active
Serial1/0 (up): ip 192.168.123.2 dlci 402(0x192,0x6420), staticbroadcast,
              CISCO, status defined, active
Serial1/0 (up): ip 192.168.123.3 dlci 403(0x193,0x6430), staticbroadcast,
              CISCO, status defined, active

R4#ping 192.168.123.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.123.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/52/116 ms

R4#ping 192.168.123.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.123.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/56/108 ms

R4#ping 192.168.123.3
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.123.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/52/124 ms


Configuración Interfaces.

R1#show running-config interface serial1/0
!
interface Serial1/0
 ip address 192.168.123.1 255.255.255.0
 encapsulation frame-relay
 serial restart-delay 0
 frame-relay map ip 192.168.123.3 103 broadcast
 frame-relay map ip 192.168.123.4 104 broadcast
 frame-relay map ip 192.168.123.2 102 broadcast
 no frame-relay inverse-arp
 frame-relay lmi-type cisco

R2#show running-config interface serial1/0
!
interface Serial1/0
 ip address 192.168.123.2 255.255.255.0
 encapsulation frame-relay
 serial restart-delay 0
 frame-relay map ip 192.168.123.4 204 broadcast
 frame-relay map ip 192.168.123.3 203 broadcast
 frame-relay map ip 192.168.123.1 201 broadcast
 no frame-relay inverse-arp
 frame-relay lmi-type cisco

R3#show running-config interface serial1/0
!
interface Serial1/0
 ip address 192.168.123.3 255.255.255.0
 encapsulation frame-relay
 serial restart-delay 0
 frame-relay map ip 192.168.123.4 304 broadcast
 frame-relay map ip 192.168.123.2 302 broadcast
 frame-relay map ip 192.168.123.1 301 broadcast
 no frame-relay inverse-arp
 frame-relay lmi-type cisco

R4#show run int s1/0
!
interface Serial1/0
 ip address 192.168.123.4 255.255.255.0
 encapsulation frame-relay
 serial restart-delay 0
 frame-relay map ip 192.168.123.4 401
 frame-relay map ip 192.168.123.3 403 broadcast
 frame-relay map ip 192.168.123.2 402 broadcast
 frame-relay map ip 192.168.123.1 401 broadcast
 no frame-relay inverse-arp
 frame-relay lmi-type cisco

Frame Relay con Inverse ARP

Con esta practica en GNS3, verificaremos y entenderemos el funcionamiento de Frame Relay. Esta tecnologia WAN (Wide Area Network) es muy popular porque facilita la construcción de redes confiables y de bajo costo. Uno de sus principales ventajas es de poder configurar enlaces seriales punto a punto con la capacidad de conectar un sitio a muchos sitios remotos a través de un circuito físico. En esta practica se mostrara el proceso de la configuración de Frame Relay utilizando la siguiente topologia.

Topologia de Frame Relay a Configurar en GNS3.

La imagen anterior muestra una topologia Full Mesh. Una red Mesh es una red múltiplemente conexa, en la cual los nodos tienen más de una conexión con más de un nodo diferente. No necesariamente deben conectarse todos contra todos, éste es un caso especial que se denomina Full-Mesh. Configuraremos esta topologia en GNS3, en el cual utilizaremos un Router central el cual le configuraremos cuatro interfaces seriales donde le indiciaremos los DLCIs para que puedan ser asignados dinamicamente con Inverse ARP. Al configurar la encapsulacion Frame Relay en cada Router, automaticamente detectara los DLCIs ya que Inverse ARP esta habilitado por defecto.

Frame Relay en GNS3 con topologia Full Mesh.

Para configurar esta toplogia primero realizaremos la configuracion del Switch de Frame Relay, donde le indicaremos los DLCIs. Lo primero es activar la conmutación Frame Relay en el Router con el siguiente comando.

FrameRelay(config)#frame-relay switching

Luego a configurar las interfaces seriales, la encapsulacion, el reloj, le indicaremos que la interface como dispositivo DCE y por ultimo definimos los DLCIs para cada interface.

FrameRelay#configure terminal
FrameRelay(config)#interface Serial1/0
FrameRelay(config-if)#no ip address
FrameRelay(config-if)#encapsulation frame-relay
FrameRelay(config-if)#clock rate 64000
FrameRelay(config-if)#frame-relay intf-type dce
FrameRelay(config-if)#frame-relay route 102 interface Serial1/1 201
FrameRelay(config-if)#frame-relay route 103 interface Serial1/2 301
FrameRelay(config-if)#frame-relay route 104 interface Serial1/3 401
FrameRelay(config-if)#no shutdown
FrameRelay(config-if)#exit
FrameRelay(config)#interface Serial1/1
FrameRelay(config-if)#no ip address
FrameRelay(config-if)#encapsulation frame-relay
FrameRelay(config-if)#clock rate 64000
FrameRelay(config-if)#frame-relay intf-type dce
FrameRelay(config-if)#frame-relay route 201 interface Serial1/0 102
FrameRelay(config-if)#frame-relay route 203 interface Serial1/2 302
FrameRelay(config-if)#frame-relay route 204 interface Serial1/3 402
FrameRelay(config-if)#no shutdown
FrameRelay(config-if)#exit
FrameRelay(config)#interface Serial1/2
FrameRelay(config-if)#no ip address
FrameRelay(config-if)#encapsulation frame-relay
FrameRelay(config-if)#clock rate 64000
FrameRelay(config-if)#frame-relay intf-type dce
FrameRelay(config-if)#frame-relay route 301 interface Serial1/0 103
FrameRelay(config-if)#frame-relay route 302 interface Serial1/1 203
FrameRelay(config-if)#frame-relay route 304 interface Serial1/3 403
FrameRelay(config-if)#no shutdown
FrameRelay(config-if)#exit
FrameRelay(config)#interface Serial1/3
FrameRelay(config-if)#no ip address
FrameRelay(config-if)#encapsulation frame-relay
FrameRelay(config-if)#clock rate 64000
FrameRelay(config-if)#frame-relay intf-type dce
FrameRelay(config-if)#frame-relay route 401 interface Serial1/0 104
FrameRelay(config-if)#frame-relay route 402 interface Serial1/1 204
FrameRelay(config-if)#frame-relay route 403 interface Serial1/2 304
FrameRelay(config-if)#no shutdown
FrameRelay(config-if)#exit
FrameRelay(config)#end
FrameRelay#
Ahora configuramos las interfaces de los Routers.
R1>enable
R1#configure terminal
R1(config)# interface serial1 /0
R1(config-if)#encapsulation frame-relay
R1(config-if)#frame-relay lmi-type cisco
R1(config-if)#ip address 192.168.123.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#end
R1#
R2>enable
R2#configure terminal
R2(config)#interface serial1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#frame-relay lmi-type cisco
R2(config-if)#ip address 192.168.123.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#end
R2#
R3>enable
R3#configure terminal
R3(config)#interface serial1/0
R3(config-if)#encapsulation frame-relay
R3(config-if)#frame-relay lmi-type cisco
R3(config-if)#ip address 192.168.123.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#end
R3#
R4>enable
R4#configure terminal
R4(config)#interface serial1/0
R4(config-if)#encapsulation frame-relay
R4(config-if)#frame-relay lmi-type cisco
R4(config-if)#ip address 192.168.123.4 255.255.255.0
R4(config-if)#no shutdown
R4(config-if)#end
R4#
Terminando de realizar lo anterior ya podemos verificar en cualquier router con el comando show frame-relay pvc que Inverse ARP ha realizado su trabajo.
R1#show frame-relay pvc

PVC Statistics for interface Serial1/0 (Frame Relay DTE)

              Active     Inactive      Deleted       Static
  Local          3            0            0            0
  Switched       0            0            0            0
  Unused         0            0            0            0

DLCI = 102, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial1/0

  input pkts 1             output pkts 1            in bytes 34      
  out bytes 34             dropped pkts 0           in pkts dropped 0        
  out pkts dropped 0                out bytes dropped 0        
  in FECN pkts 0           in BECN pkts 0           out FECN pkts 0        
  out BECN pkts 0          in DE pkts 0             out DE pkts 0        
  out bcast pkts 1         out bcast bytes 34      
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
  pvc create time 00:07:06, last time pvc status changed 00:06:46
         
DLCI = 103, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial1/0

  input pkts 1             output pkts 2            in bytes 34      
  out bytes 68             dropped pkts 0           in pkts dropped 0        
  out pkts dropped 0                out bytes dropped 0        
  in FECN pkts 0           in BECN pkts 0           out FECN pkts 0        
  out BECN pkts 0          in DE pkts 0             out DE pkts 0        
  out bcast pkts 2         out bcast bytes 68      
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
  pvc create time 00:07:10, last time pvc status changed 00:06:50
         
DLCI = 104, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial1/0

  input pkts 1             output pkts 1            in bytes 34      
  out bytes 34             dropped pkts 0           in pkts dropped 0        
  out pkts dropped 0                out bytes dropped 0        
  in FECN pkts 0           in BECN pkts 0           out FECN pkts 0        
  out BECN pkts 0          in DE pkts 0             out DE pkts 0        
  out bcast pkts 1         out bcast bytes 34      
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
  pvc create time 00:07:11, last time pvc status changed 00:06:41
Muestra estadísticas acerca de los PVC para las interfaces.

Como podemos ver, Inverse ARP ha detectado los DLCIs. Como se muestra en la salida anterior ha detectado 3 DLCIs en funcionamiento. Estas DLCIs son las que tenemos en nuestra topologia. Para verificar el funcionamiento de Frame Relay podemos también utilizar los siguientes comandos.
Las Estadisticas de los LMI.
R1#show frame-relay lmi
LMI Statistics for interface Serial1/0 (Frame Relay DTE) LMI TYPE = CISCO
  Invalid Unnumbered info 0             Invalid Prot Disc 0
  Invalid dummy Call Ref 0              Invalid Msg Type 0
  Invalid Status Message 0              Invalid Lock Shift 0
  Invalid Information ID 0              Invalid Report IE Len 0
  Invalid Report Request 0              Invalid Keep IE Len 0
  Num Status Enq. Sent 140              Num Status msgs Rcvd 115
  Num Update Status Rcvd 0              Num Status Timeouts 25
  Last Full Status Req 00:00:00         Last Full Status Rcvd 00:00:00

El mapeo de los DLCIs.
R1#show frame-relay map
Serial1/0 (up): ip 192.168.123.2 dlci 102(0x66,0x1860), dynamic,
              broadcast,, status defined, active
Serial1/0 (up): ip 192.168.123.3 dlci 103(0x67,0x1870), dynamic,
              broadcast,, status defined, active
Serial1/0 (up): ip 192.168.123.4 dlci 104(0x68,0x1880), dynamic,
              broadcast,, status defined, active0
Muestra las entradas de mapeo actuales.

En la salida anterior nos muestra los DLCIs y que han sido aprendidos de manera dinámica. Con el siguiente comando podemos verificar que estamos utilizando la encapsulación de frame-relay en la interface, los datos de LMI, los Keepalive y mas informacion sobre la interface.
R1#show interface serial1/0
Serial1/0 is up, line protocol is up
  Hardware is M4T
  Internet address is 192.168.123.1/24
  MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec,
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation FRAME-RELAY, crc 16, loopback not set
  Keepalive set (10 sec)
  Restart-Delay is 0 secs
  CRC checking enabled
  LMI enq sent  105, LMI stat recvd 80, LMI upd recvd 0, DTE LMI up
  LMI enq recvd 0, LMI stat sent  0, LMI upd sent  0
  LMI DLCI 1023  LMI type is CISCO  frame relay DTE
  FR SVC disabled, LAPF state down
  Broadcast queue 0/64, broadcasts sent/dropped 5/0, interface broadcasts 0
  Last input 00:00:06, output 00:00:06, output hang never
  Last clearing of "show interface" counters 00:18:53
  Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
  Queueing strategy: weighted fair
  Output queue: 0/1000/64/0 (size/max total/threshold/drops)
     Conversations  0/1/256 (active/max active/max total)
     Reserved Conversations 0/0 (allocated/max allocated)
     Available Bandwidth 1158 kilobits/sec
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
     85 packets input, 1618 bytes, 0 no buffer
     Received 0 broadcasts, 0 runts, 0 giants, 0 throttles
     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
     114 packets output, 1671 bytes, 0 underruns
     0 output errors, 0 collisions, 1 interface resets
     0 output buffer failures, 0 output buffers swapped out
     1 carrier transitions     DCD=up  DSR=up  DTR=up  RTS=up  CTS=up
Encapsulacion Frame Relay en la Interface Serial.

Verificamos la conectividad dando un ping a cada router.
R1#ping 192.168.123.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.123.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 28/142/332 ms
R1#ping 192.168.123.3

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.123.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 56/120/192 ms
R1#ping 192.168.123.4

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.123.4, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 64/127/240 ms