lunes, 19 de abril de 2010

PPP sobre Frame Relay

Posted by Nicolas | lunes, 19 de abril de 2010 | Category: , , |

El RFC 1973 (PPP in Frame Relay) describe las particularidades de cómo transportar paquetes encapsulados en PPP sobre redes Frame-Relay. El método de cómo se encapsulan protocolos sobre Frame Relay es descrito en el RFC 2427 (Multiprotocol Interconnect over Frame Relay). Cisco a su vez lo describe en; PPP over Frame Relay.

Dentro del contexto del examen CCIE® de Routing & Switching, una de la aplicaciones que debe manejar es la autentificación de circuitos Frame-Relay utilizando PPP. Para esto se debe especificar un virtual template para un determinado DLCI. Ésto se hace con el comando frame-relay interface-dlci [ppp virtual-template-name], para luego configurar los parámetros dentro de interface virtual-template. Por defecto la encapsulación de un virtual template es PPP.

Como ejemplo se utilizará el esquema señalado en la figura de abajo. Para conectarse a R1 se deberá autentificar con PAP (PPP Authentication Protocol, RFC 1334) y a su vez para conectar a R2 se utilizará CHAP (Challenge Handshake Authentication Protocol, RFC 1994). Recordar que la autentificación es un proceso unidireccional en este caso.
Para comenzar simplemente se levantará PPP sobre Frame-Relay sin autentificación y luego se añadirá ésta según se especificó anteriormente.

R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#interface s0/0.12
R1(config-subif)#frame-relay interface-dlci 102 ppp virtual-template 2
R1(config-fr-dlci)#interface virtual-template 2
R1(config-if)#ip address 192.0.2.1 255.255.255.0
R1(config-if)#

R2#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#interface s0/0/0.21
R2(config-subif)#frame-relay interface-dlci 201 ppp virtual-template 1
R2(config-subif)#interface virtual-template 1
R2(config-if)#ip address 192.0.2.2 255.255.255.0
R2(config-if)#

Una rápida verificación probará que todo parece estar funcionando.

R2(config-if)#do ping 192.0.2.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.0.2.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 56/56/56 ms
R2(config-if)#

A continuación se configura la autentificación. Se comenzará con PAP, ésto se especifica con el comando ppp authentication en el router que solicitará la autentificación (R1) que contrastará los datos de autentificación en este caso contra los usuarios locales configurados en el router. Con el comando username se configura uno a modo de ejemplo. El router que se autentificará (R2) utilizará los datos que se ingresar con el comando ppp pap sent-username.

R1(config)#interface virtual-template 2
R1(config-if)#ppp authentication pap
R1(config-if)#username USER password ccie.en.espanol
R1(config)#

R2(config)#interface virtual-template 1
R2(config-if)#ppp pap sent-username USER password ccie.en.espanol
R2(config-if)#

Con debug ppp authentication se puede ver el detalle del proceso de autentificación.

R1(config)#
R1(config)#do debug ppp authentication
PPP authentication debugging is on
R1(config)#int s0/0
R1(config-if)#shut
R1(config-if)#
*Mar 3 16:14:35.516: %LINK-5-CHANGED: Interface Serial0/0, changed state to administratively dow
*Mar 3 16:14:35.520: %LINK-3-UPDOWN: Interface Virtual-Access1, changed state to down
*Mar 3 16:14:36.516: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0, changed state to down
*Mar 3 16:14:36.520: %LINEPROTO-5-UPDOWN: Line protocol on Interface Virtual-Access1, changed state to down
R1(config-if)#no shut
R1(config-if)#
*Mar 3 16:14:48.896: %LINK-3-UPDOWN: Interface Virtual-Access1, changed state to up
*Mar 3 16:14:48.900: Vi1 PPP: Using default call direction
*Mar 3 16:14:48.900: Vi1 PPP: Treating connection as a dedicated line
*Mar 3 16:14:48.900: Vi1 PPP: Session handle[EF000491] Session id[320]
*Mar 3 16:14:48.900: Vi1 PPP: Authorization required
*Mar 3 16:14:50.888: %LINK-3-UPDOWN: Interface Serial0/0, changed state to up
*Mar 3 16:14:51.888: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0, changed state to up
*Mar 3 16:15:09.524: Vi1 PPP: Authorization required
*Mar 3 16:15:09.544: Vi1 PAP: I AUTH-REQ id 1 len 25 from "USER"
*Mar 3 16:15:09.544: Vi1 PAP: Authenticating peer USER
*Mar 3 16:15:09.544: Vi1 PPP: Sent PAP LOGIN Request
*Mar 3 16:15:09.548: Vi1 PPP: Received LOGIN Response PASS
*Mar 3 16:15:09.548: Vi1 PPP: Sent LCP AUTHOR Request
*Mar 3 16:15:09.548: Vi1 PPP: Sent IPCP AUTHOR Request
*Mar 3 16:15:09.548: Vi1 LCP: Received AAA AUTHOR Response PASS
*Mar 3 16:15:09.548: Vi1 IPCP: Received AAA AUTHOR Response PASS
*Mar 3 16:15:09.552: Vi1 PAP: O AUTH-ACK id 1 len 5
*Mar 3 16:15:09.560: Vi1 PPP: Sent IPCP AUTHOR Request
*Mar 3 16:15:10.552: %LINEPROTO-5-UPDOWN: Line protocol on Interface Virtual-Access1, changed state to up

Se puede observar la autentificación de entrada (I) y el acknowledge de salida (O). En el otro sentido ahora se configurará CHAP.

R2(config-if)#interface Virtual-Template1
R2(config-if)#ppp authentication chap
R2(config-if)#
Apr 19 08:58:58.255: Vi1 PPP: Authorization required
Apr 19 08:58:58.339: Vi1 PAP: Using hostname from interface PAP
Apr 19 08:58:58.339: Vi1 PAP: Using password from interface PAP
Apr 19 08:58:58.339: Vi1 PAP: O AUTH-REQ id 156 len 25 from "USER"
Apr 19 08:58:58.339: Vi1 CHAP: O CHALLENGE id 151 len 23 from "R2"
Apr 19 08:58:58.363: Vi1 PAP: I AUTH-ACK id 156 len 5
Apr 19 08:58:59.251: %LINEPROTO-5-UPDOWN: Line protocol on Interface Virtual-Access1, changed state to down

Como se puede apreciar se ha perdido la conexión. Para reestablecerla en R2 se debe configurar contra qué se contrastará la información de autentificación que envíe R1 (CHAP utiliza por defecto el hostname del router como usuario, por ende sólo faltaría el password).

R2(config)#username R1 password cisco

R1 a su vez puede configurar la credencial a enviar configurando el usuario R2 dado wue es el usuario por defecto a utilizar.

R1(config)#username R2 password cisco
R1(config)#
Apr 19 09:04:08.668: %LINEPROTO-5-UPDOWN: Line protocol on Interface Virtual-Access1, changed state to up
R1(config)#

O bien puede configurar el password con ppp chap password. Si se desea modificar el usuario se puede hacer con: ppp chap hostname.

R1(config)#interface Virtual-Template2
R1(config-if)#ppp chap password cisco
R1(config-if)#
Apr 19 09:07:04.924: %LINEPROTO-5-UPDOWN: Line protocol on Interface Virtual-Access1, changed state to up
R1(config-if)#

Por último notar que existen otros protocolos de autentificación como EAP (Extensible Authentication Protocol, RFC 3748).

R1(config-if)#ppp authentication ?
chap Challenge Handshake Authentication Protocol (CHAP)
eap Extensible Authentication Protocol (EAP)
ms-chap Microsoft Challenge Handshake Authentication Protocol (MS-CHAP)
ms-chap-v2 Microsoft CHAP Version 2 (MS-CHAP-V2)
pap Password Authentication Protocol (PAP)

Para EAP se debe señalar explícitamente con ppp eap local que se utilizarán los usuarios locales configurados en el router para contrastar los intentos de autentificación. A su vez en el router que se autentifica, el usuario y password a enviar se configuran con ppp eap identity y ppp eap password respectivamente.

Links de interés:

En total 1 comentarios:

  1. Muy bueno. soy principiante en cisco por mi cuenta. si tienen practicas d einteres favor de enviarmelas : mario_go1@hotmail.com GRACIAS


Leave a Reply