Inicio > cisco, Routers Cisco > ADSL: ¿Qué es?, y como configurarla en un Router Cisco a través de sus comandos

ADSL: ¿Qué es?, y como configurarla en un Router Cisco a través de sus comandos

domingo, 7 de octubre de 2012 Dejar un comentario Ir a comentarios

Que tal compañeros!. Cual largo se hace el invierno y corto el veranito, ¿verdad?. Todo el año añorando el tan deseado periodo estival, y para cuando uno quiere darse cuenta….ZAS!… aparece el invierno llamando a la puerta. ¿Y en que se traduce todo esto?….. que los años van pasando, pasando y pasando… y uno empieza a tener tantos recuerdos que debe aprender a convivir con ellos. Que le vamos a hacer…supongo que nos estaremos haciendo viejos.

Al hilo de todo esto, quien no recuerda aquellos inicios en los que el modem era nuestro principal vinculo con la red. Aquello que se venía a llamar «banda estrecha». Y tanto que estrecha!. Pero es lo que tocaba en los tiempos que corrían. Por suerte en la burbuja tecnológica en la que nos movemos, todo gira a un ritmo increíble. Por ello y ante la gran demanda de acceso por parte de los usuarios, todo ello sumado a los petrodólares que las telecos veían venir, derivo en la necesidad de aumentar la velocidad de acceso a la red.

Tecnologías como xDSL empiezan a mostrar todo su potencial. El principal problema era llegar al tramo del usuario final dando el servicio que se demandaba. Pero es en este punto donde el despliegue ya existente de cobre del que ya hacía uso la telefonía fija impulso el uso de las ADSLs.

Hemos comenzado nombrando las siglas xDSL (Digital suscriber line). Podríamos decir que se trata de una familia de tecnologías que utilizan el par de cobre para transmitir datos a alta velocidad,  además de asegurarnos una cierta calidad de servicio (QoS), pudiendo ser estas tanto simétricas como asimétricas  (VDSL, HDSL, SHDSL, ADSL …)

Vamos a ir cocinando los conceptos poquito a poco que es como mejor sabe todo.

Seguro que muchos recordareis la primera ADSL que nos instalaron en casa. El modem venia con unos microfiltros que debíamos colocar delante del teléfono.


¿Para que microfiltros?. Porque uno de los mayores éxitos de la ADSL es, que tanto para transmisión de datos como de voz, se hace uso de mismo par de cobre. Transmisión simultánea de voz y datos. Pero ¿como?. Sencillo. Las frecuencias en las que operan voz y datos son diferentes.  La voz lo hace entre los 300Hz y 3400Hz, mientras que los datos van de los 24KHz hasta los 1.104KHz. La inclusión de esos microfiltros permite separar ambas frecuencias.

Decir que inicialmente como técnicas de modulación se utilizaron CAP y DMT para las ADSL, pero finalmente se opto por DMT. Podéis leer el siguiente enlace de linuxpc para conocer más sobre la modulación.

Llegados a este punto creo que podemos empezar a ver el porque del éxito de las ADSLs: Aprovechamos la infraestructura de cobre, mayor velocidad, uso de un medio no compartido…. pero claro también necesitamos asegurarnos una calidad de servicio (QoS) ya que podemos hacer uso de servicios diversos como la transmisión de vídeo. Para lograrlo se emplea la tecnología ATM – capa de enlace (capa 2).

Uffff… ¿Y que es eso de ATM?. Es lo que se viene a llamar Asynchronous Transfer Mode. Una tecnología que nació para aprovechar al máximo la capacidad de los sistemas de transmisión. Orientada a conexión, la información es transmitida asíncronamente de forma mas eficiente en forma de paquetes cortos que se denominan celdas ATM con un tamaño de longitud constante. Después de varias discusiones, que parece no contentaron ni a unos ni a otros, se fijo el tamaño de las celdas en 53bytes: 5bytes-Header y 48 bytes Payload, siendo estas enrutadas mediante el uso de canales (VCI-16bits) y trayectos (VPI-8bits). Importante por lo tanto reseñar que dentro del encabezado nos encontramos con estos 2 identificadores que vienen a definir el enrutamiento de los nodos.  El uso de ambos nos va a permitir identificar el próximo destino de la celda.

ATM nos va a permitir por lo tanto garantizar un ancho de banda, calidad de servicio, soporta múltiples servicios….

Ahora vamos a ver como se produce la comunicación, pero antes de explicarlo vamos a introducir otro dispositivo importante que es el DSLAM.

DSLAM (digital subscriber Line access Multiplexer), es un conmutador ATM con múltiples interfaces localizado en las centrales telefónicas que proporciona acceso a los servicios xDSL por par trenzado de cobre. Es básicamente un equipo situado en la central con muchas tarjetas, y cada una de ellas con muchos modems ATU-C, que concentra el tráfico hacia una red WAN. Se trata de dispositivo sin el cual sería casi imposible realizar un despliegue de este tipo.

Veamos ahora como se produce ese enlace ADSL:

La comunicación entre el modem xDSL (lado cliente) y el DSLAM (lado proveedor) se realiza a través de las interfaces ATU-R (lado cliente) y ATU-C (lado del proveedor). Comoooorrr???. Vamos a simplificarlo al máximo..

Generalmente si vamos a instalar una nueva ADSL en alguna empresa, el operador nos va a instalar lo que viene a llamarse un PTR o un Splitter.

PTR

SPLITTER

En el caso de que nos instalen un Splitter, vemos que la cajita que nos instalan va a tener un par de salidas:

Una de ellas vendrá marcada como PAST que utilizaremos para la voz, y la otra como PASBA (ATU-R) que será la que usemos para los datos. Es decir, se va a encargar de separar las frecuencias que ya hemos comentado. Si no tenemos nada de ello y se ha instalado el servicio ADSL sobre una línea de teléfono que ya tenemos, haremos uso de los microfiltros que nos enviarán con nuestro router ADSL.

Por lo tanto, aprovechando el par de cobre desplegado nos conectamos al modem ATU-C de la DSLAM de nuestro proveedor que internet.

En principio para distancias inferiores a 300m de la central para establecer el bucle se pueden obtener velocidades altas pero con distancias superiores a 4 km la velocidad puede bajar a 1 Mb. Si ya estamos por encima de estos valores mejor buscamos otra serie de alternativas.

Pero ¿ a que se deben esas diferencias en cuanto a velocidad ?. Aquí entran en juego otro par de términos con los que tenemos que estar familiarizados.

  • Atenuación: Cuanto mayor es la longitud del cable mayor es la atenuación que se sufre y menor el caudal que se puede ofrecer.
  • Ruido: Con el ruido externo se produce una reducción de la relación entre señal/ruido disminuyendo el caudal de datos.

Mas info sobre ruido/atenuación por ejemplo en el siguiente link tecnicosadsl.

Es por ello que cuando más lejos nos encontremos de la central, menor va a ser nuestra velocidad de conexión.

Como ya muchas aplicaciones están basadas en TCP/IP se ha establecido como mecanismos de encapsulación:  Sobre el protocolo IP, ATM (RFC 1483 LLC-enrutamiento),  para los datos AAL5 o SNAP y en el caso de la voz o el vídeo estaríamos hablando de AAL2.

Antes no hemos comentado que sobre ATM se pueden definir diferentes categorías de servicios, de las que para datos se utiliza UBR ya que no especifica parámetros de QoS. Por debajo de Ip podríamos utilizar PPP para autentificar al usuario.

Podemos mirar algunos enlaces en Internet que nos van a explicar todo esto mucho mejor:Alexei Blanco Ortiz y Servicios de banda Anchasobre ADSL.

Después de este rollo majadero vamos a lo que realmente nos interesa que es aplicar todo esto en la configuración de una ADSL con nuestro querido router Cisco.

En nuestro caso vamos a basar nuestra configuración en un Cisco 877. Aunque conocidos los conceptos, es perfectamente aplicable a modelos superiores.

Antes de nada nos vamos a conectar por el puerto de consola al Router mediante ese cable azul que nos proporcionan con la caja. Lo conectamos al puerto serie de nuestro PC y al puerto que aparece etiquetado como console en el lado del router. Y para ello podemos utilizar un programita que tenemos en nuestro Linux llamado minicom. En caso de no disponer de puerto serie, deberemos adquirir un conversor USB-Serie.

Como es mi caso, vemos que pasa al conectarlo…

pedlab#tail -f /var/log/messages

GusBicNad kernel: [23510.070650] usb 2-1.3: new full-speed USB device number 5 using ehci_hcd  
GusBicNad kernel: [23510.164099] usb 2-1.3: New USB device found, idVendor=0403, idProduct=6001 
GusBicNad kernel: [23510.164109] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3  
GusBicNad kernel: [23510.164114] usb 2-1.3: Product: USB <-> Serial  GusBicNad kernel: [23510.164119] 
 usb 2-1.3: Manufacturer: FTDI 
GusBicNad kernel: [23510.164123] usb 2-1.3: SerialNumber: 12345678  .................. 
GusBicNad kernel: [23510.696352] ftdi_sio 2-1.3:1.0: FTDI USB Serial Device converter detected   
GusBicNad kernel: [23510.696444] usb 2-1.3: Setting MaxPacketSize 64  
GusBicNad kernel: [23510.697165] usb 2-1.3: FTDI USB Serial Device converter now 
 attached to ttyUSB0  
GusBicNad kernel: [23510.697205] usbcore: registered new interface driver ftdi_sio 
GusBicNad kernel: [23510.697210] ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver

Es importante ver como lo ha identificado: ttyUSB0

Ahora como root ejecutamos:

pedlab#minicom -s

Y tal como aparece en la imagen lo configuramos (9600 Baudios, 8 bits, 1 bit de parada y Sin paridad).
Ya solo nos queda guardar esta configuración con un nombre.  Ejem:cisco.

Procedemos a ejecutar la aplicación haciendo uso del fichero que acabamos de configurar:

pedlab#minicom cisco

Una vez estemos conectados reiniciamos el Router para ir viendo el proceso de arranque:

System Bootstrap, Version 12.3(8r)YI4, RELEASE SOFTWARE
 Technical Support: http://www.cisco.com/techsupport
 Copyright (c) 2006 by cisco Systems, Inc.
 C870 series (Board ID: 7-148) platform with 131072 Kbytes of main memory
 Booting flash:/c870-advsecurityk9-mz.124-15.T7.bin

Self decompressing the image : ############################### [OK]
 Restricted Rights Legend
 Use, duplication, or disclosure by the Government is
 subject to restrictions as set forth in subparagraph
 (c) of the Commercial Computer Software - Restricted
 Rights clause at FAR sec. 52.227-19 and subparagraph
 (c) (1) (ii) of the Rights in Technical Data and Computer
 Software clause at DFARS sec. 252.227-7013.

cisco Systems, Inc.
 170 West Tasman Drive
 San Jose, California 95134-1706
 Cisco IOS Software, C870 Software (C870-ADVSECURITYK9-M), Version 12.4(15)T7, 
 RELEASE SOFTWARE (fc3)

Technical Support: http://www.cisco.com/techsupport
 Copyright (c) 1986-2008 by Cisco Systems, Inc.
 Compiled Thu 14-Aug-08 07:43 by prod_rel_team

Image text-base: 0x8002007C, data-base: 0x81A62D00

This product contains cryptographic features and is subject to United
 States and local country laws governing import, export, transfer and
 use. Delivery of Cisco cryptographic products does not imply
 third-party authority to import, export, distribute or use encryption.
 Importers, exporters, distributors and users are responsible for
 compliance with U.S. and local country laws. By using this product you
 agree to comply with applicable laws and regulations. If you are unable
 to comply with U.S. and local laws, return this product immediately.
 A summary of U.S. laws governing Cisco cryptographic products may be found at:
 http://www.cisco.com/wwl/export/crypto/tool/stqrg.html

If you require further assistance please contact us by sending email to
 export@cisco.com.

Installed image archive
 [OK]Cisco 877-M (MPC8272) processor (revision 0x400) with 118784K/12288K bytes of memory.
 Processor board ID FCZ130210HS
 MPC8272 CPU Rev: Part Number 0xC, Mask Number 0x10

4 FastEthernet interfaces
 1 ATM interface
 128K bytes of non-volatile configuration memory.
 24576K bytes of processor board System flash (Intel Strataflash)

SETUP: new interface ATM0 placed in "shutdown" state
 Press RETURN to get started!

Cisco Router and Security Device Manager (SDM) is installed on this device.
 This feature requires the one-time use of the username "cisco"
 with the password "cisco". The default username and password have a privilege level of 15.

Please change these publicly known initial credentials using SDM or the IOS CLI.
 Here are the Cisco IOS commands.

username <myuser> privilege 15 secret 0 <mypassword>

no username cisco

Replace <myuser> and <mypassword> with the username and password you want to use.
 For more information about SDM please follow the instructions in the QUICK START
 GUIDE for your router or go to http://www.cisco.com/go/sdm

-----------------------------------------------------------------------

User Access Verification

Username: cisco
 Password:

La password por defecto para entrar en modo privilegiado es «cisco».

% Password expiration warning.
 -----------------------------------------------------------------------
It is strongly suggested that you create a new username with a 
privilege level  of 15 using the following command. username <myuser> 
 privilege 15 secret 0 <mypassword>
Replace <myuser> and <mypassword> with the username and password you want to
 use. -----------------------------------------------------------------------
yourname#

Y así es como se nos presenta nuestro querido router.

Si no disponemos de acceso y lo queremos retornar a los valores de fábrica debemos mantener pulsado el botón reset durante 5 segundos durante el proceso de arranque.

En caso de tener acceso en modo privilegiado y queramos borrar toda la configuración:

yourname#erase nvram:
Erasing the nvram filesystem will remove all configuration files! Continue? [confirm]
 [OK]
 Erase of nvram: complete

Y ahora vamos a proceder a reiniciarlo:

yourname#reload
System configuration has been modified. Save? [yes/no]: no
 Proceed with reload? [confirm]

Y esperamos a que termine de reiniciarse:

*Mar  1 00:18:20.735: %SYS-5-RELOAD: Reload requested. Reload Reason: Reload Command.
 System Bootstrap, Version 12.3(8r)YI4, RELEASE SOFTWARE
 Technical Support: http://www.cisco.com/techsupport
 Copyright (c) 2006 by cisco Systems, Inc.
 C870 series (Board ID: 7-148) platform with 131072 Kbytes of main memory

Vamos a ver el inicio:

*Mar  1 00:18:20.735: %SYS-5-RELOAD: Reload requested  by cisco on console. 
 Reload Reason: Reload Command.
System Bootstrap, Version 12.3(8r)YI4, RELEASE SOFTWARE
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 2006 by cisco Systems, Inc. ..................................
Installed image archive
 Cisco 877-M (MPC8272) processor (revision 0x400) with 118784K/12288K bytes of memory.
 Processor board ID FCZ130210HS
 MPC8272 CPU Rev: Part Number 0xC, Mask Number 0x10
 4 FastEthernet interfaces
 1 ATM interface
 128K bytes of non-volatile configuration memory.
 24576K bytes of processor board System flash (Intel Strataflash)
--- System Configuration Dialog ---

Would you like to enter the initial configuration dialog? [yes/no]: no
Press RETURN to get started!

Arranque IOS

Muchos de los comandos que vamos a ver, ya han sido explicados en el post anterior relativo a los Switches por lo que me voy a repetir.

Entramos en modo privilegiado y comprobamos que nuestro Router tiene una configuración básica.

Router>ena
 Router#sh run
Building configuration...
Current configuration : 702 bytes
 !
 version 12.4 //version de IOS
 no service pad ////Desactivar comandos para conexión con dispositivos 
 remotos utilizando el protocolo X.25
 service timestamps debug datetime msec
 service timestamps log datetime msec //Activamos las marcas de tiempo
 no service password-encryption //permite encriptar las password pero e una forma muy débil
 !
 hostname Router //Nombre que le damos a nuestro querido Router
 !
 boot-start-marker
 boot-end-marker
 !
 !
 no aaa new-model //que no se autentique contra TACS o Radius
 !
 !
 dot11 syslog
 ip cef //Permite un método de conmutación más rápido en dispositivos cisco.
 !
 archive //ir almacenando los comandos en un buffer.
 log config
 hidekeys //para que no muestre las passwd en los ficheros de configuración
 !
 interface ATM0
 no ip address
 shutdown
 no atm ilmi-keepalive
 dsl operating-mode auto
 !
 interface FastEthernet0
 !
 interface FastEthernet1
 !
 interface FastEthernet2
 !
 interface FastEthernet3
 !
 interface Vlan1 //definimos la interface VLAN por defecto
 no ip address
 !
 ip forward-protocol nd
 !
 no ip http server //Desactivar el acceso a través de http y https
 no ip http secure-server
 !
 control-plane
 !
 line con 0
 no modem enable
 line aux 0
 line vty 0 4
 !
 scheduler max-task-time 5000
 end

Como hemos visto en el arranque en este caso vamos a trabajar sobre un modelo 877 con una version de IOS 12.3(8r)YI4.

En la página de Cisco vamos a encontrar toda la información a la hora de configurar nuestro Router. Por ejemplo para empezar con una configuración básica podemos mirar este documento. También podemos ir a la página de techrepublic y buscar por la palabra cisco.

Antes de nada vamos a cambiarle del nombre para saber que estamos ante un entorno de pruebas:

Router#configure t
Enter configuration commands, one per line.  End with CNTL/Z.

Router(config)#hostname test_adsl_cisco

Hemos visto en el inicio que tiene 4 interfaces que forman parte de la interface Vlan1. Vamos entonces a configurar una dirección IP para esa vlan y tener la posibilidad de conectarnos en remoto.

test_adsl_cisco#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
test_adsl_cisco(config)#interface vlan1
 test_adsl_cisco(config-if)#ip address 10.100.5.240 255.255.255.0
 test_adsl_cisco(config-if)#ip default-gateway 10.100.5.254
 test_adsl_cisco(config-if)#^Z

Este modelo en concreto solo nos deja generar un par de vlans. En cuanto queremos generar una tercera…

test_adsl_cisco(config)#vlan 3
Vlan can not be added. Maximum number of 2 vlan(s) in the database.

test_adsl_cisco#sh vlan-switch

VLAN Name                             Status    Ports 
---- -------------------------------- --------- ------------------------------- 
1    default                     active    Fa0, Fa2, Fa3 2    
VLAN0002                         active    Fa1 1002 
fddi-default                     act/unsup 1003 
token-ring-default               act/unsup 1004 
fddinet-default                  act/unsup 1005 
trnet-default                    act/unsup

Otra cosa que suele resultar útil es evitar el que cuando escribamos mal algún comando intente resolverlo:

test_adsl_cisco#sh12
test_adsl#Translating "sh12"...domain server (255.255.255.255)

Lo podemos solucionar de la siguiente manera:

test_adsl_cisco#no ip domain lookup

También podemos hacer :

test_adsl_cisco(config)#line vty 0 4
test_adsl_cisco(config-line)#transport preferred none
test_adsl_cisco#pepe
^
% Invalid input detected at '^' marker.

También podemos indicar un servidor DNS para que pueda resolver dominios.

test_adsl#ip name-server 194.30.0.1

Antes de nada en función de la versión de IOS instalada podría ser necesario realizar alguna actualización de la versión para añadir nuevas funcionalidades o solucionar problemas. Vamos a ver un poco la estructura de directorios de router, procedimiento para realizar backup de la configuración, de la IOS….

La forma más cómoda para mover ficheros entre nuestro equipo y el router va a ser instalándonos un servidor TFTP en nuestro Linux.

A continuación vamos a detallar el proceso para instalarlo.

Si no tenemos instalado Xinetd instalado procedemos a instalarlo:

#apt-get install xinetd

Y ahora instalamos el servidor tftpd y un cliente para realizar las pruebas oportunas.

#apt-get install tftpd tftp

Por defecto trabajamos sobre el directorio : /srv/tftp

En caso de no existir procedemos a crear la siguiente estructura:

#mkdir /srv/tftp/ ; mkdir /srv/tftp/tftpboot

Generamos el siguiente servicio haciendo uso de Xinetd

#vi /etc/xinetd.d/tftp
service tftp
 {
 disable = no
 socket_type = dgram
 protocol = udp
 wait = yes
 user = nobody
 server = /usr/sbin/in.tftpd
 server_args = /srv/tftp/tftpboot -s
 }

Y le asignamos el usuario estableciendo además los permisos:

#chmod -R 777 /srv/tftp/tftpboot
 #chown -R nobody.nogroup /srv/tftp/tftpboot
#ls -alid /srv/tftp/tftpboot
8003791 drwxrwxrwx 2 nobody nogroup 4096 tftpboot

Reiniciamos ahora el servicio para que nos recoja los cambios realizados:

#/etc/init.d/xinetd restart

Comprobamos que el servicio este levantado :

#netstat -ano | grep 69
 udp        0      0 0.0.0.0:69      0.0.0.0:*      off (0.00/0/0)

#lsof -i -n | grep tftp
tftp       3196       root    3u  IPv4 559776      0t0  UDP *:39221  
xinetd     3480       root    5u  IPv4 565321      0t0  UDP *:tftp

Para ver que todo funcione correctamente y antes de proceder a jugar con nuestro router, vamos a generar un ficherito en ese directorio para hacer unas pruebas.

Ahora si nos conectamos por tftp para recoger ese ficherito:

#tftp localhost
 #get fichero
Received 8 bytes in 0.1 seconds

# netstat -nap | grep tftp
udp        0      0 0.0.0.0:39221           0.0.0.0:*       
3196/tftp unix  3      [ ]         STREAM     CONNECTED     12336    3196/tftp

Podemos ir viendo los log que se van generando en el syslog:

 
#tail -f /var/log/syslog
pedlap tftpd[3199]: tftpd: trying to get file: fichero 
pedlap tftpd[3199]: 
tftpd: serving file from /srv/tftp/tftpboot

Si no hemos asignado correctamente los permisos al directorio el error que vamos a obtener es:

 
#pedlap:/tmp# tftp 10.100.105.187
#tftp> get fichero
Error code 2: Access violation

Ahora que ya tenemos el servicio configurado y funcionando podemos empezar a recoger la configuración del Router.

Si queremos evitar problemas con los permisos, genero el fichero que le voy a pasar desde el router vacio y le asigno permisos a tope.

#touch /srv/tftp/tftpboot/test_adsl-confg
#chmod 777 /srv/tftp/tftpboot/test_adsl-confg
test_adsl_cisco#copy system:running-config tftp://10.100.5.107
Address or name of remote host [10.100.5.107]?  Destination filename [test_adsl-confg]?

Vamos a modificar en el fichero de configuración que nos hemos descargado el hostname a test_adsl1 y comprobar si funciona el proceso inverso.

test_adsl#copy  tftp://10.100.5.107/test_adsl-confg nvram:startup-config
Destination filename [startup-config]?
 Accessing tftp://10.10.5.107/test_adsl-confg...
 Loading test_adsl-confg from 10.100.5.107 (via Vlan1): !
 [OK - 1954 bytes]
 [OK]
 1954 bytes copied in 1.244 secs (1571 bytes/sec)
 

test_adsl#sh startup-config | in hostname
hostname test_adsl1

Parece que si….

Ahora vamos a ver el proceso a seguir a la hora de actualizar la IOS. Antes de nada vamos a empezar viendo la estructura de directorios y ficheros:

test_adsl_cisco#sh file systems
File Systems:
 Size(b)       Free(b)      Type  Flags  Prefixes
-             -   opaque     rw   archive:
 -            -   opaque     rw   system:
 -            -   opaque     rw   tmpsys:
 *     23482368       4501504     flash     rw   flash:
 -            -   opaque     rw   null:
 -            -   network    rw   tftp:
 131072        120347     nvram     rw   nvram:
 -            -  opaque     wo   syslog:
 -             - opaque     ro   xmodem:
 -             - opaque     ro   ymodem:
 -             -network     rw   rcp:
 -             -network     rw   ftp:
 -             -network     rw   http:
 -             -network     rw   scp:
 -             -opaque      ro   tar:
 -             -network     rw   https:
 -             -opaque     ro   cns:

El listado de directorios del sistema:

 
dir ?
/all             List all files
 /recursive       List files recursively
 all-filesystems  List files on all filesystems
 archive:         Directory or file name
 cns:             Directory or file name
 flash:           Directory or file name
 null:            Directory or file name
 nvram:           Directory or file name
 system:          Directory or file name
 tar:             Directory or file name
 tmpsys:          Directory or file name
 xmodem:          Directory or file name
 ymodem:          Directory or file name
 <cr>

Podemos mostrar los ficheros de alguno de los directorios de varias formas:

test_adsl_cisco#dir nvram:
 Directory of nvram:/

o

test_adsl_cisco#cd nvram:
 test_adsl_cisco#dir
Directory of nvram:/121  -rw-53       <no date>  startup-config
 122  ----        3600                  <no date>  private-config
 123  -rw-        1953                  <no date>  underlying-config
 1  ----          62                    <no date>  persistent-data
 2  -rw-           0                    <no date>  ifIndex-table
 3  -rw-         593                    <no date>  IOS-Self-Sig#1.cer
 4  -rw-         593                    <no date>  IOS-Self-Sig#2.cer
 5  -rw-         593                    <no date>  IOS-Self-Sig#3.cer
131072 bytes total (120347 bytes free)

Incluso podemos realizar  una copia del fichero de configuración dentro del propio Router.

test_adsl_cisco#copy startup-config startup-config-backup
 Destination filename [startup-config-backup]?
1953 bytes copied in 1.144 secs (1707 bytes/sec)
 

test_adsl_cisco#dir
Directory of nvram:/ 
121  -rw-        1953                    <no date>  startup-config
 122  ----        3600                    <no date>  private-config
 123  -rw-        1953                    <no date>  underlying-config
 1  ----          62                    <no date>  persistent-data
 2  -rw-           0                    <no date>  ifIndex-table
 3  -rw-         593                    <no date>  IOS-Self-Sig#1.cer
 4  -rw-         593                    <no date>  IOS-Self-Sig#2.cer
 5  -rw-         593                    <no date>  IOS-Self-Sig#3.cer
 6  -rw-        1953                    <no date>  startup-config-backup
131072 bytes total (118299 bytes free)

Ahora vamos a copiar la configuración que tenemos en memoria, a memoria no volatile (NVRAMpara que una vez reiniciemos el Router esta no se pierda.

test_adsl#copy running-config startup-config

o simplemente:

test_adsl_cisco#wr

Pero si hemos estado haciendo modificaciones y simplemente queremos dejarlo como estaba sin hacer un reload o copy de startup-config to running-config, utilizamos el comando replace que simplemente compara lo que tenemos con las modificaciones que hemos realizado.

Por realizar un ejemplo, vamos simplemente a cambiar el nombre de host.

test_adsl_cisco(config)#hostname peroc
 peroc(config)#exit

y lo ejecutamos:

peroc#configure replace nvram:startup-config
 This will apply all necessary additions and deletions
 to replace the current running configuration with the
 contents of the specified configuration file, which is
 assumed to be a complete configuration, not a partial
 configuration. Enter Y if you are sure you want to proceed. ? [no]: yes
 Total number of passes: 1
 Rollback Done

Ahora vamos a ver el contenido del fichero de configuración:

test_adsl_cisco#more startup-config
!
 hostname test_adsl
 .........................................

Vamos a seguir ejecutando comandos que nos ayudan a conocer la estructura de directorios.
En caso de que querer saber en que directorio nos encontramos:

test_adsl_cisco#pwd
nvram:/

Ahora podemos borrar la copia de la configuración que anteriormente hemos generado.

test_adsl_cisco#delete startup-config-backup
Delete filename [startup-config-backup]?
 Delete nvram:startup-config-backup? [confirm]

O podemos generar un directorio dentro de la estructura de directorios del Router para almacenar nuestros backups.

 
test_adsl_cisco#mkdir backup
Create directory filename [backup]?
 Created dir flash:/backup
Directory of flash:/

2  -rwx    16417632   --- -- ---- --:--:-- -----  c870-advsecurityk9-mz.124-15.T7.bin
 9  drwx           0   Mar 9 2002 20:10:28 +00:00  backup
23482368 bytes total (4501504 bytes free)

Vayamos a un nivel inferior dentro de la estructura:

test_adsl_cisco#cd ..

Y mostramos su contenido;

test_adsl_cisco#dir
 Directory of flash:/
2  -rwx    16417632   --- -- ---- --:--:-- -----  c870-advsecurityk9-mz.124-15.T7.bin
 3  -rwx        3179   Mar 1 2002 00:03:55 +00:00  sdmconfig-8xx.cfg
 4  -rwx      931840   Mar 1 2002 00:04:12 +00:00  es.tar
 5  -rwx     1505280   Mar 1 2002 00:04:35 +00:00  common.tar
 6  -rwx        1038   Mar 1 2002 00:04:46 +00:00  home.shtml
 7  -rwx      112640   Mar 1 2002 00:04:58 +00:00  home.tar
 8  -rwx         660   Mar 2 2002 19:56:54 +00:00  vlan.dat
23482368 bytes total (4501504 bytes free)

Podemos indicar el directorio del cual queremos mostrar el contenido. Para ello tenemos varias formas de hacerlo.

test_adsl_cisco#dir flash:
o
test_adsl_cisco#sh flash:
Directory of flash:/

2  -rwx    16417632   --- -- ---- --:--:-- -----  c870-advsecurityk9-mz.124-15.T7.bin
 3  -rwx        3179   Mar 1 2002 00:03:55 +00:00  sdmconfig-8xx.cfg
 4  -rwx      931840   Mar 1 2002 00:04:12 +00:00  es.tar
 5  -rwx     1505280   Mar 1 2002 00:04:35 +00:00  common.tar
 6  -rwx        1038   Mar 1 2002 00:04:46 +00:00  home.shtml
 7  -rwx      112640   Mar 1 2002 00:04:58 +00:00  home.tar
 8  -rwx         660   Mar 2 2002 19:56:54 +00:00  vlan.dat
 23482368 bytes total (4501504 bytes free)

Aquí vemos el ficherito de la IOS : c870-advsecurityk9-mz.124-15.T7.bin

Si queremos guardar una copia de este Firware nos lo traemos a través de tftp:

test_adsl_cisco#copy flash:c870-advsecurityk9-mz.124-15.T7.bin tftp://10.100.5.107
 Address or name of remote host [10.100.5.107]?
 Destination filename [c870-advsecurityk9-mz.124-15.T7.bin]?
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 16417632 bytes copied in 49.932 secs (328800 bytes/sec)

Ahora vamos a realizar el proceso inverso, Instalar una nueva versión de IOS.

test_adsl_cisco#copy tftp://10.100.5.197/c870-advsecurityk9-mz.124-15.T7.bin 
 flash:c870-advsecurityk9-mz.124-15.T7.bin
. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!![OK - 29654656/49807356 bytes]
Verifying checksum…  OK (0xAC8A)
 29654656 bytes copied in 56.88 secs (80383 bytes/sec)

En caso de no tener espacio nos va a indicar que debemos borrar la IOS anterior antes de proceder a subir la nueva.

Debemos verificar la integridad del fichero para comprobar que no este corrupto.

test_adsl_cisco#verify flash:c870-advsecurityk9-mz.124-15.T7.bin

 Verifying file integrity of flash:c870-advsecurityk9-mz.124-15.T7.bin.................
 Embedded Hash   MD5 : DC25F1453260428DD9A5D680EC0378C9
 Computed Hash   MD5 : DC25F1453260428DD9A5D680EC0378C9
 CCO Hash        MD5 : ABD6319974EE10E053966ECF57C67F16
Embedded hash verification successful.

Incluso podemos chequear la integridad del disco:

test_adsl_ciscol#fsck
Fsck operation may take a while. Continue? [confirm]
 .......................
 Fsck of flash: complete

Por último vamos a salvar la configuración.

test_adsl_cisco#wr

Y reiniciamos nuestro nuestro Router:

test_adsl_cisco#reload

Una vez que este haya arrancado, vamos a ver la versión del nuevo Firmware instalado.

test_adsl_cisco(config)#sh ver

Cisco IOS Software, C870 Software (C870-ADVSECURITYK9-M), Version 12.4(15)T7, R. SOFTWARE (fc3)
 Technical Support: http://www.cisco.com/techsupport
 Copyright (c) 1986-2008 by Cisco Systems, Inc.
 Compiled Thu 14-Aug-08 07:43 by prod_rel_team
 #

Bueno…bueno, ya tenemos nuestro Router preparado para empezar a jugar con el. Ahora vamos a realizar una serie de acciones básicas antes de proceder a configurar la ADSL.

Vamos a mostrar una serie de comandos básicos que debemos conocer:

Para ver la tabla de rutas:

test_adsl_cisco#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route
Gateway of last resort is 0.0.0.0 to network 0.0.0.0
12.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C 12.0.52.76/30 is directly connected, ATM0.1
C 12.100.105.0/24 is directly connected, Vlan1
194.30.49.0/32 is subnetted, 1 subnets
C 194.30.49.185 is directly connected, Loopback11
S* 0.0.0.0/0 is directly connected, ATM0.1

Para añadir una nueva ruta estática:

test_adsl_cisco#ip route "IP/mask o Subnet destino" "IP o interface salida" distancia administrativa

Por ejemplo hemos visto que para añadir la ruta por defecto a través de la interface ATM:

test_adsl_cisco# ip route 0.0.0.0 0.0.0.0 ATM0.1

Para ver la tabla ARP:

test_adsl_cisco#sh arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 10.50.10.100 - 0024.149f.bced ARPA Vlan2
Internet 10.50.11.22 1 5c26.0a5c.81f5 ARPA Vlan1
Internet 10.50.11.20 1 0050.56a2.231d ARPA Vlan1

Podemos ver estadísticas del tráfico que atraviesa nuestro Router:

test_adsl_cisco#sh ip traffic
IP statistics:
Rcvd: 14833364 total, 1326972 local destination
0 format errors, 0 checksum errors, 1471229 bad hop count
0 unknown protocol, 324373 not a gateway
0 security failures, 0 bad options, 0 with options
Opts: 0 end, 0 nop, 0 basic security, 0 loose source route
0 timestamp, 0 extended security, 0 record route
0 stream ID, 0 strict source route, 0 alert, 0 cipso, 0 ump
0 other
.......................
ICMP statistics:
....................
TCP statistics:
...........................
PIMv2 statistics: Sent/Received
......................
IGMP statistics: Sent/Received
Total: 0/0, Format errors: 0/0, Checksum errors: 0/0
..............
UDP statistics:
............................
OSPF statistics:
.................
ARP statistics:
...................

En caso de haber tenido el protocolo CDP activado, nos mostraría información sobre equipos adyacentes que también lo tengan activado. 

test_adsl_cisco#show cdp neighbors detail
% CDP is not enabled
test_adsl_cisco#

Si queremos ver los contadores de las interfaces

test_adsl_cisco#sh interfaces fastEthernet 0 counters
Port InOctets InUcastPkts InMcastPkts InBcastPkts
Fa0 98808 110 2 877
Port OutOctets OutUcastPkts OutMcastPkts OutBcastPkts
Fa0 14578 79 41 0

Y ahora reiniciamos los contadores.

test_adsl_cisco#clear counters
Clear "show interface" counters on all interfaces [confirm]

Y lo comprobamos :

test_adsl_cisco#sh interfaces fastEthernet 0 counters
Port InOctets InUcastPkts InMcastPkts InBcastPkts
Fa0 2630 6 0 20
Port OutOctets OutUcastPkts OutMcastPkts OutBcastPkts
Fa0 538 4 1 0

Sabemos que tenemos un comando para reiniciar el Router. Es un comando que nos puede venir muy bien caso de estar realizando una configuración en remoto que nos deje sin acceso al mismo.

Podemos indicarle como parámetro el tiempo en que queremos que se reinicie nuestro Router. En caso de quedarnos sin acceso se reiniciara en el tiempo marcado y podremos volver a conectarnos.

test_adsl_cisco#reload in 10
Reload scheduled for 12:06:18 AR Sun Oct 7 2012 (in 10 minutes) by pedimave on vty0 (100.10.5.187)
Reload reason: Reload Command
Proceed with reload? [confirm]

Si hemos realizado las modificaciones correctamente podemos proceder a cancelar el reinicio.

test_adsl_cisco#reload cancel
***
*** --- SHUTDOWN ABORTED ---
***

En caso de tener NAT activado podemos ver las sessiones que los equipos tienes levantadas:

test_adsl_cisco#sh ip nat translations
Pro Inside global Inside local Outside local Outside global
udp 190.40.19.185:123 16.0.35.5:123 13.206.3.166:123 10.106.6.176:123
udp 190.40.19.185:123 16.0.35.75:123 17.158.2.67:123 147.16.1.1:123
icmp 190.40.19.185:29586 16.0.35.75:29586 14.50.1.13:29586 14.31.10.13:29586

Unos atajos de teclado que nos pueden ser útiles:

      • Control A Nos vamos al principio de la línea.
      • Control E Nos vamos al final de la línea.
      • Control K Borra todo lo que tenemos a la derecha del cursor.
      • Control P Recorremos los comandos almacenados en el buffer del histórico hacia atrás.
      • Control N Recorremos los comandos almacenados en el buffer del histórico hacia delante.
      • Control Z Salimos del modo configuración.

Suele ser interesante poner un Banner a presentar cuando nos conectemos con algún tipo de mensaje:

test_adsl_cisco(config)#banner login
 test_adsl_cisco(config)#banner login #Router test

Enter TEXT message.  End with the character '#'.

O incluso el típico mensaje del día :

test_adsl_cisco(config)#banner motd #Mensaje del dia#

Ahora toca configurar los accesos para que «solo personal autorizado» se pueda conectar al Router:

Por Telnet:

test_adsl_cisco#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
test_adsl_cisco(config)#

test_adsl_cisco(config)#line vty 0 4
 test_adsl_cisco(config-line)#password passtest01line

A través de la Consola:

test_adsl_cisco(config)#line console 0
 test_adsl_cisco(config-line)#login
 % Login disabled on line 0, until 'password' is set
 test_adsl_cisco(config-line)#pass
 test_adsl_cisco(config-line)#password passtest01line

Incluso indicarle un tiempo de inactividad para que nos desconecte pasado el mismo.

test_adsl_cisco(config-line)#exec-timeout 15

Generamos la contraseña para el acceso privilegiado :

test_adsl_cisco#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
test_adsl_cisco(config)#

test_adsl_cisco(config-line)#
 test_adsl_cisco(config)#enable secret ena_passtest01line

Esto esta muy bien pero sabemos de la debilidad de las conexiones a través de telnet, por lo que vamos a configurar el acceso como nos gusta:  A través de un protocolo seguro como SSH.

Debemos antes de nada asignar un nombre de dominio:

test_adsl_cisco#ip domain-name test_adsl.dominio.net

Y generamos la Key:

test_adsl_cisco#crypto key generate rsa
The name for the keys will be: test_adsl.test_adsl.ofisat.net
Choose the size of the key modulus in the range of 360 to 2048 for your
General Purpose Keys. Choosing a key modulus greater than 512 may take
a few minutes.

How many bits in the modulus [512]: 2048
% Generating 2048 bit RSA keys, keys will be non-exportable...[OK]

Antes de nada y para no cortarnos el acceso a nosotros mismos, vamos a dejar la posibilidad de acceso por telnet y luego ya procedemos a eliminarlo:

 
test_adsl(config)#line vty 0 4
test_adsl(config-line)#transport input ssh telnet
test_adsl(config-line)#

Toca ahora generar un usuario con el nivel de privilegio que me interese. En nuestro caso como solo nos conectamos nosotros…a tope!:

test_adsl_cisco(config)#username pedimave privilege 0 password 0 passtest01line

Ahora si que me valido con el usuario que hemos generado por ssh y comprobamos que funciona :

Es interesante desactivar service password-encryption. ¿ Porque?

Porque permite encriptar las password de una forma muy débil (pass del tipo 7 reversible) que fácilmente pueden ser desenciptadas. Mucho mejor utilizar secret MD5.

¿Que no os lo creéis?. Vamos a ver un ejemplo de configuración:

line vty 0 4
 access-class 10 in
 password passtest01line

Si ahora lo activamos parece que queda como muy complicado de adivinar:

line vty 0 4
 access-class 10 in
 password 7 1119181604060E1F107A7A28213D30
!

Pero vamos a ver lo sencillo que es conociendo la pass cifrada obtenerla en texto claro:

test_adsl_cisco(config)#key
test_adsl_cisco(config)#key chain Desencriptar
test_adsl_cisco(config-keychain)#key 1
test_adsl_cisco(config-keychain-key)#key-string 7 1119181604060E1F107A7A28213D30
test_adsl_cisco(config)#exit   
test_adsl_cisco#show key chain

Key-chain 1119181604060E1F107A7A28213D30:
key 1 -- text "passtest01line"
accept lifetime (always valid) - (always valid) [valid now]
 send lifetime (always valid) - (always valid) [valid now]

¿Sencillo verdad?. De todas formas nos puede servir para evitar ese primer vistazo a los curiosetes…

Decir que siempre es interesante monitorizar nuestro dispositivo a través de algún software.

Para ello podemos hacer uso del protocolo SNMP. Podemos configurarlo de una forma sencilla generando un usuario de lectura que pueda realizar consultas:

test_adsl(config)#snmp-server community lecturasnmp ro 11

EL problema es que en versión 2 no es un protocolo seguro ya que la comunidad de lectura definida viaja en texto claro. Pero si queremos aprovecharnos de la capa de seguridad que nos ofrece la versión 3 del protocolo:

test_adsl_cisco(config)#snmp-server view lecturac internet included 
test_adsl_cisco(config)#snmp-server group readonly v3 auth read lecturac
test_adsl_cisco(config)#snmp-server user lec readonly v3 auth md5 passw_sec

Ahora a jugar con las access-list para filtrar accesos y crear reglas. Un vistacito a este lynk de Cisco para conocer más sobre este tema.

test_adsl_cisco(config)#access-list 11 remark SNMP filter
test_adsl_cisco(config)#access-list 11 permit 10.100.10.100 0.0.0.0
Vemos las access-list que tenemos definidas:
test_adsl_cisco#sh access-lists

Extended IP access list 101
10 permit ip 10.100.101.0 0.0.0.255 any (1 match)
20 permit ip host 10.6.3.79 any (4 matches)

Podemos definir a través de las listas de acceso quien puede acceder a través del telnet :

test_adsl_cisco(config)#line vty 0 4 
test_adsl_cisco(config-line)#access-class 10 in 
test_adsl_cisco#access-list 10 permit 10.100.101.187 0.0.0.0

Si no es necesario, por seguridad también desactivamos el protocolo CDP:

test_adsl_cisco(config)#no cdp run 

Para llevar un control de los logs, es necesario tener bien configurada la hora. Podemos comprobarla :

test_adsl_cisco#sh clock  *00:17:43.155 UTC Sun Mar 10 2002 

Vamos a poner en Hora nuestro Router.

Antes de nada, marcamos la zona Horaria :

test_adsl_cisco(config)#clock timezone CST +1 

Y que tenga en cuenta el horario de verano:

test_adsl_cisco(config)#clock summer-time CDT recurring 
test_adsl_cisco#clock set 20:02:00 20 Sep 2012

A comprobarlo….

test_adsl_cisco#sh clock 20:02:14.235 UTC Wed Sep 20 2012 

Esto es muy manual, pero si queremos que el proceso se haga de forma automática a través de protocolo NTP.

test_adsl_cisco(config)#ntp server 130.206.3.166 
test_adsl_cisco(config)#ntp server 147.156.1.1 
test_adsl_cisco(config)#exit 
test_adsl_cisco#sh ntp status

Clock is synchronized, stratum 2, reference is 130.206.3.166 
nominal freq is 250.0000 Hz, actual freq is 250.0000 Hz, precision is 2**18 
reference time is D38C6603.563A6FF6 (15:08:51.336 UTC Wed Jun 20 2012) 
clock offset is -1.8433 msec, root delay is 23.32 msec 
root dispersion is 3.42 msec, peer dispersion is 1.07 msec

Y lo comprobamos:

test_adsl_cisco#sh ntp associations address 

address ref clock st when poll reach delay offset disp
+~147.156.1.1 147.156.1.135 2 318 1024 377 62.2 2.41 1.2
*~130.206.3.166 .GPS. 1 144 1024 377 58.3 2.66 0.7
* master (synced), # master (unsynced), + selected, - candidate, ~ configured

La teoría está bien pero vamos a ver si nos ajusta el horario de forma automática:

Le forzamos a una hora incorrecta:

test_adsl_cisco#clock set 19:02:00 20 Sep 2012 

Pero al de poco tiempo….

test_adsl_cisco#sh clock .20:02:18.191 UTC Sep 20 2012 

Si necesitamos ver cierta información del Router como por ejemplo el número de serie :

test_adsl#sh inventory
NAME: "877-M", DESCR: "877-M chassis, Hw Serial#: FCZ130210HS, Hw Revision: 0x400"
 PID: CISCO877-M-K9       , VID: V04 , SN: FCZ130210HS

Aquí tenemos un link de www.pantz.org con referencia a algunos de los comandos , pero esta claro que no hay página más completa que la de la propia de Cisco para tener una referencia a todos ellos.

Ahora que ya conocemos los conceptos que rodean a las ADSL, y disponemos un sistema sobre el que poder trabajar, vamos a ver como configurarla y dar solución a problemas comunes que nos puedan ir surgiendo en su configuración a través de algunos ejemplos.

Una vez configurada, veremos cómo consultar información sobre las interfaces, debug, logs… :

Un ejemplo de configuración de una ADSL PPoA con Direcciones Ips dinámicas:

test_adsl_cisco(config)#interface vlan1 
test_adsl_cisco(config-if)# no shut 
test_adsl_cisco(config-if)# ip address 10.5.8.89 255.255.255.0 
test_adsl_cisco(config-if)# ip nat inside //en caso de querer activar NAT 
test_adsl_cisco(config-if)# no ip directed-broadcast

Configuramos la interface ATM con la información que el proveedor nos han tenido que dar sobre la ADSL: circuito virtual (vpi/vci), encapsulación….

test_adsl_cisco(config)#interface atm0 
test_adsl_cisco(config-if)# no shut
test_adsl_cisco(config-if)#no ip address
test_adsl_cisco(config-if)#no ip directed-broadcast
test_adsl_cisco(config-if)# no ip mroute-cache
test_adsl_cisco(config-if)# pvc <vpi/vci>
test_adsl_cisco(config-if-atm-vc)# encapsulation aal5mux ppp dialer
test_adsl_cisco(config-if-atm-vc)# dialer pool-member 1 

Configuramos la interface Dialer para el protocolo PPP sobre ATM (PPPoA) y que nos asigne una dirección Ip pública de forma dinámica.

test_adsl_cisco(config)#interface dialer1 
test_adsl_cisco(config-if)# ip address negotiated
test_adsl_cisco(config-if)# no ip directed-broadcast !--Si queremos hacer Nat
test_adsl_cisco(config-if)# ip nat outside 
test_adsl_cisco(config-if)# encapsulation ppp
test_adsl_cisco(config-if)# dialer pool 1
test_adsl_cisco(config-if)# ppp chap hostname usuario
test_adsl_cisco(config-if)#ppp chap password contraseña
test_adsl_cisco(config-if)# ppp pap sent-username usuario password contraseña

En caso de querer hacer NAT :

test_adsl(config)#ip nat inside source list 1 interface dialer1 overload

Creamos una lista de acceso que nos permita la salida desde nuestra red :

test_adsl_cisco(config)#access-list 1 permit <ip network address of ethernet0> <wildcard mask> 

Le Indicamos que lo enrute todo por la Interface Dialer que hemos generado:

test_adsl_cisco(config)#ip route 0.0.0.0 0.0.0.0 dialer1 

Lo tenéis todo mucho mejor explicado el la web de cisco.

Vamos ahora a ver otro ejemplo de configuración utilizando encapsulation aal5mux ip.

test_adsl_cisco(config)#interface Vlan1 
test_adsl_cisco(config-if)# ip nat inside //En caso de querer hacer NAT

Configuramos la interface ATM0

test_adsl_cisco(config-subif)#^Z 
test_adsl_cisco#conf t
test_adsl_cisco(config)#interface ATM0
test_adsl_cisco(config-if)#no ip address
test_adsl_cisco(config-if)# no atm auto-configuration
test_adsl_cisco(config-if)# dsl operating-mode auto
test_adsl_cisco(config-subif)#^Z
test_adsl_cisco(config)#interface ATM0.1 point-to-point
test_adsl_cisco(config-subif)# ip address 10.6.19.70 255.255.255.252
test_adsl_cisco(config-subif)# ip nat outside
test_adsl_cisco(config-subif)# ip virtual-reassembly
test_adsl_cisco(config-subif)# class-int muxppp
test_adsl_cisco(config-subif)#pvc 1/32
test_adsl_cisco(config-if-atm-vc)# tx-ring-limit 3
test_adsl_cisco(config-if-atm-vc)# no oam-pvc manage
test_adsl_cisco(config-if-atm-vc)# encapsulation aal5mux ip
test_adsl_cisco(config-subif)#^Z
test_adsl_cisco(config)#access-list 101 permit ip 10.100.10.0 0.0.0.255 any

Definimos una interface Loopback.

test_adsl_cisco(config)#interface Loopback1 
test_adsl_cisco(config-subif)#ip address 194.30.49.185 255.255.255.255

Y sacamos todo el tráfico a través de ella haciendo NAT.

test_adsl_cisco(config)#ip route 0.0.0.0 0.0.0.0 ATM0.1 
test_adsl_cisco(config)#ip nat inside source list 101 
 interface Loopback1 overload

Ejemplo de la parte DSLAM : Fuente
Cisco 6130 DSLAM (NI2)

Current configuration:
!
version 12.1 
service timestamps debug datetime msec 
service timestamps log datetime msec 
! 
hostname ni2 
! 
interface ATM0/0 
 no ip address 
 ATM cac service-category abr deny 
 ATM maxvp-number 0 
 ATM maxvc-number 4096 
 ATM maxvci-bits 12 
! 
interface Ethernet0/0 
 no ip route-cache 
! 
interface ATM0/1 
 no ip address 
 ATM ilmi-keepalive 
 ATM cac service-category abr deny 
! 
interface ATM1/4 
 no ip address 
 no ATM ilmi-keepalive 
 ATM PVC 3 100  interface  ATM0/1 3 100 
 ATM PVC 4 100  interface  ATM0/1 4 100 
ip classless 
no ip http server 
! 
end

Otro documento en el que se ve explicado todo esto.

Ahora nos toca ver una parte muy importante que es el como consultar determinada información sobre la configuración de nuestro router. Sabemos que podemos realizar el famoso sh run para ver la configuración que está corriendo, pero muchas veces necesitamos ir al detalle de una forma más rápida.

Por ejemplo, si queremos ver la configuración de una de nuestras interfaces:

test_adsl#sh running-config interface fastEthernet 1
Building configuration...
Current configuration : 57 bytes
 !
 interface FastEthernet1
 switchport access vlan 2
 end

En caso de querer que nos muestre únicamente la información a partir de una determinada línea:

test_adsl_cisco#sh running-config | begin dot11 
syslog dot11 syslog ip cef
............

Si nos interesa alguna sección en concreto :

test_adsl_cisco#sh running-config | section archive 
archive
log config
logging enable
notify syslog contenttype plaintext
hidekeys

Podemos incluso mostrar las líneas que incluyan una determinada palabra :

test_adsl_cisco#sh running-config | include login 
login local

O que la excluyan.

test_adsl_cisco#sh running-config | exclude login 

Si queremos ver los datos de una determinada interface cuando estamos dentro del modo configuración, debemos anteponer la palabra do:

test_adsl_cisco(config-if)#do sh interface fa 0 
FastEthernet0 is up, line protocol is up
Hardware is Fast Ethernet, address is 0024.149f.aeed (bia 0024.149f.aeed)
................

Ahora vamos a consultar cosillas relacionadas con la configuración de la interface ATM:

Empezamos viendo un resumen de las interfaces que tenemos configuradas:

test_adsl_cisco#sh ip interface brief
Interface IP-Address OK? Method Status Protocol
FastEthernet0 unassigned YES unset up up
FastEthernet1 unassigned YES unset up down
FastEthernet2 unassigned YES unset up down
FastEthernet3 unassigned YES unset up down
ATM0 unassigned YES manual up up
ATM0.1 10.6.5.77 YES NVRAM up up
Vlan1 10.100.7.110 YES NVRAM up up
Loopback11 192.20.89.183 YES NVRAM up up
NVI0 192.20.89.183 YES unset up up
Vlan2 10.100.1.100 YES manual up down

Si tenemos algún comando que ejecutemos de forma frecuente y no queremos estar tecleándolo, podemos hacer uso de lo que se vienen a llamar Alias:

Use alias exec for Privileged Mode (any command you use at the router# prompt).
 Use alias configure for Global Configuration Mode (any command you use at the router(config)# prompt).
 Use alias interface for Interface Configuration Mode (any command you use at the router(config-if)# prompt).

Por poner un ejemplo:

test_adsl_cisco(config)#alias exec interfaces show ip int brief 
test_adsl_cisco(config)#^Z
test_adsl_cisco#interfaces
Interface IP-Address OK? Method Status Protocol
FastEthernet0 unassigned YES unset up up
FastEthernet1 unassigned YES unset up down
FastEthernet2 unassigned YES unset up down
FastEthernet3 unassigned YES unset up down
ATM0 unassigned YES manual up up
ATM0.1 10.5.2.77 YES NVRAM up up
Vlan1 10.100.5.110 YES NVRAM up up
Loopback11 192.20.89.183 YES NVRAM up up
NVI0 192.20.89.183 YES unset up up
Vlan2 10.100.1.100 YES manual up down

Vemos que algunos alias ya vienen pre-definidos por defecto:

test_adsl#sh aliases
Exec mode aliases:
 h                     help
 lo                    logout
 p                     ping
 r                     resume
 s                     show
 u                     undebug
 un                    undebug
 w                     where
interfaces            show ip int brief

Algunas veces como la MAC va a tener asociada la IP pública puede ser necesario el cambiar la MAC de la interface del router:

test_adsl_cisco(config-if)#mac-address 0000.0000.0001 

Comprobamos el cambio:

test_adsl(config-if)#do sh interface fa 0
FastEthernet0 is up, line protocol is up
 Hardware is Fast Ethernet, address is 0000.0000.0001 (bia 0024.149f.aeed)

Y por supuesto podemos comprobar el estado del router como ya vimos en el artículo anterior:

test_adsl#sh processes cpu
CPU utilization for five seconds: 1%/0%; one minute: 2%; five minutes: 2%

Para sincronizar los mensajes de la consola con nuestro prompt:

test_adsl_cisco(config)#line console 0 
test_adsl_cisco(config-line)#logging synchronous
test_adsl_cisco(config-line)#exit
test_adsl_cisco(config)#line vty 0 4
test_adsl_cisco(config-line)#logging synchronous

Y en caso de querer desactivarlo a nivel global:

test_adsl(config)#no logging console

Ahora vamos a ver cómo hacer Debug, algo necesario en caso de tener problemas:

test_adsl_cisco#debug atm packet 

Si nos hemos conectado en remoto, para que nos muestre los mensajes de forma remota debemos de hacer uso del siguiente comando. En caso contrario, únicamente nos mostrara los mensajes si estamos conectados por Consola.

test_adsl_cisco#term monitor 

Vamos a activar la parte de login para ver el histórico de que es lo que se ha ejecutado y ver que ha podido pasar.

test_adsl_cisco(config)# 
test_adsl_cisco(config)#archive
test_adsl_cisco(config-archive)#log config
test_adsl_cisco(config-archive-log-cfg)#logging enable

Lo comprobamos:

test_adsl_cisco#sh archive log config all
idx sess user@line Logged command 1 1 console@console |access-list 199 permit icmp host 10.10.10.10 host 20.20.20.20 

Y vemos lo que se ha ido ejecutando:

test_adsl_cisco#sh history 
ena
alias exec interfaces show ip int brief
conf t

Podemos activar un servidor DHCP para que nos sirva direcciones de forma automática:

test_adsl_cisco#(config)#service dhcp 
test_adsl_cisco#(config)#ip dhcp excluded-address 10.105.4.1 10.105.4.20
test_adsl_cisco#(config)#ip dhcp pool LAN
test_adsl_cisco#(DHCP-config)#network 10.105.4.0 255.255.255.0
test_adsl_cisco#(DHCP-config)#default-router 10.105.4.254
test_adsl_cisco#(DHCP-config)#lease 10
test_adsl_cisco#(DHCP-config)#dns-server 10.105.10.1

Ahora vamos los diferentes errores con los que nos podemos encontrar a la hora de configurar la ADSL:

test_adsl_cisco#show interface atm 0 
ATM0 is down, line protocol is down

En este caso, si tenemos acceso físicamente al router comprobamos que la lucecita CD que aparece en el frontal este fija. En caso de quedarse continuamente parpadeando es que no esta sincronizando. Es muy posible que se trate de un problema físico con el cable la línea ADSL o el servicio WAN. Debemos comprobar el estado del cable (RJ-11), y que este se conecte al port que viene marcado como DSL. Si va conectado a un Splitter comprobar que va conectado a la salida de datos (PASBA).

Si vemos que todo está bien conectado, y sigue sin sincronizar, deberemos hablar con nuestro ISP para comprobar que el servicio DSL este activado.

Vamos ahora a ver diferentes estados en los que nos podemos encontrar nuestra interface. Si esta se muestra como, ATM0 is up, line protocol is down,  puede ser que sincronice pero no tenga conexión con el DSLAM. En la configuración podemos comprobar DSL que operating-mode este como automático en caso de no saber con certeza el modo.

test_adsl_cisco#configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
test_adsl_cisco(config)#interface atm 0
test_adsl_cisco(config-if)#dsl operating-mode auto
test_adsl_cisco(config-if)#endSi el error que nos aparece es:
test_adsl_cisco#show interface atm 0

ATM0 is administratively down, line protocol is down

Entonces vamos a proceder a levantar la interface :

est_adsl_cisco#configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
test_adsl_cisco#interface atm 0
test_adsl_cisco(config-if)#no shut
test_adsl_cisco(config-if)#end

Esta claro que es muy complicado conocer de todos los comandos, pero siempre podemos recurrir a la ayuda: ?

test_adsl_cisco#?
Exec commands:
<1-99> Session number to resume
access-enable Create a temporary Access-List entry
access-profile Apply user-profile to interface
access-template Create a temporary Access-List entry
archive manage archive files

A la hora de solucionar problemas es muy importante hacer uso del Debug. No es una herramienta que podemos tener corriendo todo el tiempo ya que produce un decremento importante en el rendimiento del router. Por ejemplo debug all or debug ip packet detail son muy agresivos para lanzarlos en entornos de producción. Recordar que una vez hayamos terminado tenemos ejecutar  no debug all o undebug all. Y luego un term no mon.

Vemos los protocolos configurados:

test_adsl_cisco#sh protocols
Global values:
Internet Protocol routing is enabled
FastEthernet0 is up, line protocol is up
FastEthernet1 is up, line protocol is down
FastEthernet2 is up, line protocol is down
FastEthernet3 is up, line protocol is down
ATM0 is up, line protocol is up
ATM0.1 is up, line protocol is up
Internet address is 10.2.33.78/30
Vlan1 is up, line protocol is up
Internet address is 10.100.5.110/24
Loopback11 is up, line protocol is up
Internet address is 192.189.9.15/32
NVI0 is up, line protocol is up
Interface is unnumbered. Using address of Loopback11 (192.189.9.15)
Vlan2 is up, line protocol is down
Internet address is 10.100.5.100/24

Global values: Internet Protocol routing is enabled FastEthernet0 is up, line protocol is up FastEthernet1 is up, line protocol is down FastEthernet2 is up, line protocol is down FastEthernet3 is up, line protocol is down ATM0 is up, line protocol is up ATM0.1 is up, line protocol is up Internet address is 10.5.2.79/30 Vlan1 is up, line protocol is up Internet address is 10.100.8.110/24 Loopback11 is up, line protocol is up Internet address is 193.3.59.195/32 NVI0 is up, line protocol is up Interface is unnumbered. Using address of Loopback11 (193.3.59.195) Vlan2 is up, line protocol is down Internet address is 10.160.1.100/24 

Ahora vamos a comprobar información relativa a la ADSL. Muy importante porque vamos a ver la velocidad a la que sincroniza, los datos de ruido y atenuación, errores… Nos lo da tanto en el lado del cliente con en le DSLAM.

test_adsl_cisco#sh dsl interface atM 0
ATM0
Alcatel 20190 chipset information
ATU-R (DS) ATU-C (US)
Modem Status: Showtime (DMTDSL_SHOWTIME)
DSL Mode: ITU G.992.5 (ADSL2+) Annex A
ITU STD NUM: 0x03 0x2
Chip Vendor ID: 'STMI' 'BDCM'
Chip Vendor Specific: 0x0000 0x619B
Chip Vendor Country: 0x0F 0xB5
Modem Vendor ID: 'CSCO' 'GSPN'
Modem Vendor Specific: 0x0000 0x1000
Modem Vendor Country: 0xB5 0xFF
Serial Number Near: FCZ130210HS
Serial Number Far:
Modem VerChip ID: C196P (1) capability-enabled
DFE BOM: DFE3.0 Annex M (3)
Capacity Used: 69% 100%
Noise Margin: 15.0 dB 31.0 dB
Output Power: 17.0 dBm 6.5 dBm
Attenuation: 26.0 dB 15.0 dB
Defect Status: None None
Last Fail Code: None
Watchdog Counter: 0x60
Watchdog Resets: 0
Selftest Result: 0x00
Subfunction: 0x00
Interrupts: 78467 (0 spurious)
PHY Access Err: 0
Activations: 8
LED Status: ON
LED On Time: 100
LED Off Time: 100
Init FW: init_AMR-3.0.014_no_bist.bin
Operation FW: AMR-3.0.014.bin
FW Source: embedded
FW Version: 3.0.14

DS Channel1 DS Channel0 US Channel1 US Channel0
Speed (kbps): 0 3008 0 317
Cells: 0 3400432 0 1444531524
Reed-Solomon EC: 0 577 0 0
CRC Errors: 0 0 0 0
Header Errors: 0 0 0 0
Total BER: 0E-0 0E-0
Leakage Average BER: 0E-0 0E-0
Interleave Delay: 0 39 0 24
ATU-R (DS) ATU-C (US)
Bitswap: enabled enabled
Bitswap success: 0 0
Bitswap failure: 0 0

LOM Monitoring : Disabled

DMT Bits Per Bin
000: 0 0 0 0 0 0 0 0 2 2 3 4 5 5 5 6
010: 6 6 6 6 6 6 6 6 5 5 5 5 4 4 3 3
020: 0 5 5 5 5 6 6 6 7 7 7 7 7 7 7 7
030: 7 7 7 6 6 5 5 4 5 6 6 6 7 7 7 7
....................................
1D0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1E0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1F0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

DSL: Training log buffer capability is not enabled

Ver información de VC :

test_adsl_cisco#show atm vc  
           VCD /                                        Peak  Avg/Min Burst             
Interface  Name         VPI   VCI  Type   Encaps   SC   Kbps   Kbps   Cells  Sts        
0.1        1              1    32  PVC    MUX      UBR     317                UP

Nos empieza a sonar esto que estamos viendo ¿Verdad?.

Compruebo si tenemos algo en modo debug:

test_adsl_cisco#sh debug

Activamos una serie de debug ATM para poder ver que esta pasando:

test_adsl_cisco#term mon
 test_adsl_cisco#debug atm packet
 test_adsl_cisco#debug atm errors
 test_adsl_cisco#debug atm events

ATM events debugging is on
test_adsl_cisco#
atmsar_raw_rcv: pak->if_input = 0x82D78A4C,
          pak->if_input->hwptr = 0x82D77EC0 encap = 0x800
ATM0:atmsar_oam_enqueue_vc,pak = 0x83A18DA8 
atmsar_vc_tx_start(82D77EC0).
atmsar_transmit_pak_wrapper: deq(83A18DA8). vcd: 1.
atmsar_transmit_pak_wrapper : encap = Raw

.......................

Si queremos llegar a depurar los paquetes:

test_adsl_cisco#debug ip packet 

Pero ya hemos comentado que mucho cuidadin ya que va a generar mucha información.

Nos ponemos a debugear y si por ejemplo tumbamos la interface ATM0:

Changing vc 1/32vc-state to ATM_VC_NOT_IN_SERVICE
ATM0: atmsar_atm_get_stats,vcinfo = 0x0

Vamos a darle una lectura al siguiente documento de Cisco:

En un proceso normal en que se levanta la ADSL vamos a ver qué pasa por los siguientes modos:

      • STOP             in shutdown state
      • INIT               initialization
      • DLOAD_1     init and downloading 1st image
      • DLOAD_2     downloading 2nd image
      • DO_OPEN     requesting activation with CO
      • SHOWTIME  activation succeeded
Cuando nos encontramos en el modo DO_OPEN, nos tenemos que fijar el los mensajes que nos van apareciendo:

Si el mensaje es un «0x8» junto con un mensaje «Could not establish connection», esto quiere decir que no se recibe una señal de entrada:

test_adsl_cisco#
1d01h: DSL: 1: Modem state = 0x8
 1d01h: DSL: 2: Modem state = 0x8
 1d01h: DSL: 3: Modem state = 0x8
 1d01h: DSL: 4: Modem state = 0x8
 1d01h: DSL: 5: Modem state = 0x8
 1d01h: DSL: Could not establish connection
 <... snipped ...>

Si el estado del modem cambia de «0x8» a «SHOWTIME», esto quiere decir que se ha conectado correctamente con el DSLAM.

test_adsl_cisco#
00:24:18: DSL: 2: Modem state = 0x8
 00:24:21: DSL: 3: Modem state = 0x8
 00:24:23: DSL: 4: Modem state = 0x8
 00:24:26: DSL: 5: Modem state = 0x8
 00:24:28: DSL: 6: Modem state = 0x10
 00:24:31: DSL: 7: Modem state = 0x10
 00:24:33: DSL: 8: Modem state = 0x10
 00:24:36: DSL: 9: Modem state = 0x10
 00:24:37: DSL: Received response: 0x24
 00:24:37: DSL: Showtime!
 <... snipped ...>

%PARSER-5-CFGLOG_LOGGEDCMD: User:pedimave  logged command:no shutdown
 DSL: SM: [DMTDSL_STOP -> DMTDSL_INIT]
 DSL: SM: [DMTDSL_INIT -> DMTDSL_DLOAD_1]
 DSL(ATM0): Downloading init_AMR-3.0.014_no_bist.bin
 DSL:(ATM0) Downloaded 2 blocks... Finished!
 DSL(ATM0): Sent command 0x14
 %LINK-3-UPDOWN: Interface ATM0, changed state to down
 atmsar_atm_lineaction(ATM0): state=0
 DSL(ATM0): Received response: 0x80
 DSL: SM: [DMTDSL_DLOAD_1 -> DMTDSL_DLOAD_2]
 DSL(ATM0): Downloading AMR-3.0.014.bin
 DSL(ATM0): Downloaded 100 blocks
 DSL(ATM0): Downloaded 200 blocks
 ......................
 DSL(ATM0): Downloaded 4100 blocks
 DSL:(ATM0) Downloaded 4121 blocks... Finished!
 DSL(ATM0): Sent command 0x14
 set tx_gain_offset to 0
 set rx_gain_offset to 0
 set target_noise_margin_offset to 0
 set max_bits_tone_limit to 15
changed current state to do open!!
DSL: SM: [DMTDSL_DLOAD_2 -> DMTDSL_DO_OPEN]
DSL(ATM0): Send ADSL_OPEN command.
DSL(ATM0): Using preferred open mode
 DSL(ATM0): Using ITU sync first for 5 secs, then ANSI/ITU sync alternatively for 2 secs
 DSL(ATM0): Using subfunction 0x0
 LOCAL:Max noise margin for power cutoff 31
 DSL(ATM0): GPCI[0] 0x5
 DSL(ATM0): GPCI[1] 0x19
 DSL(ATM0): GPCI[2] 0x11
 DSL(ATM0): GPCI[3] 0x0
 DSL(ATM0): Sent extended command 0x3
 DSL(ATM0): 1: Modem state = 0x9
 DSL(ATM0): 2: Modem state = 0x9
 DSL(ATM0): 3: Modem state = 0x9
 DSL(ATM0): 4: Modem state = 0x10
 DSL(ATM0): 5: Modem state = 0x10
 DSL(ATM0): 6: Modem state = 0x10
 DSL(ATM0): 7: Modem state = 0x10
 DSL(ATM0): 8: Modem state = 0x10
 DSL(ATM0): 9: Modem state = 0x10
 DSL(ATM0): Received response: 0x24
 DSL(ATM0): Showtime!
 DSL(ATM0): Sent command 0x31
 DSL(ATM0): Received response: 0x12
 DSL(ATM0): operation mode 0x40000
 DSL(ATM0): Sent command 0x33
 DSL(ATM0): Received response: 0x16
 DSL(ATM0): Far End Chip Country Code 0xFF
 DSL: Far End Chip Vendor ID GSPN
 DSL: Far End Chip Vendor ID Specific 0x0010
 DSL: Far End ITU Vendor STD Number 0x0002
 DSL(ATM0): Sent command 0x32
 DSL(ATM0): Received response: 0x14
 DSL(ATM0): Near End Chip Country Code 0x0F
 DSL: Near End Chip Vendor ID STMI
 DSL: Near End Chip Vendor ID Specific 0x0000
 DSL: Near End ITU Vendor STD Number 0x0003
 DSL(ATM0): Sent extended command 0x5
 DSL(ATM0): Near End Modem Country Code 0xB5
 DSL: Near End Modem Vendor ID CSCO
 DSL: Near End Modem Vendor ID Specific 0x0000
 DSL: Near End Modem Version 12.4(15)T7
 DSL: Near End Modem Serial Number FCZ130210HS
 DSL(ATM0): get Near End extended ITU ID succeeded
 DSL(ATM0): Sent extended command 0x5
 DSL(ATM0): Far End Modem Country Code 0xFF
 DSL: Far End Modem Vendor ID GSPN
 DSL: Far End Modem Vendor ID Specific 0x1000
 DSL: Far End Modem Version
 DSL: Far End Modem Serial Number
 DSL(ATM0): get Far End extended ITU ID succeeded
 ATM0 atmsar_update_us_bandwidth(): upstream bw =316 Kbps
 DSL: SM: [DMTDSL_DO_OPEN -> DMTDSL_SHOWTIME]
test_adsl_cisco#sh atm pvc
VCD /                                        Peak  Avg/Min Burst
 Interface  Name         VPI   VCI  Type   Encaps   SC   Kbps   Kbps   Cells  Sts
 0.1        3              1    32  PVC    MUX      UBR     316                UP
test_adsl_cisco#sh atm pvc 1/32
Description: N/A
ATM0.1: VCD: 3, VPI: 1, VCI: 32
****UBR, PeakRate: 316 (746 cps)
*****AAL5-MUX, etype:0x800, Flags: 0xC24, VCmode: 0x0, Encapsize: 4
OAM frequency: 0 second(s), OAM retry frequency: 1 second(s)
OAM up retry count: 3, OAM down retry count: 5
OAM END CC Activate retry count: 3, OAM END CC Deactivate retry count: 3
OAM END CC retry frequency: 30 second(s),
OAM SEGMENT CC Activate retry count: 3, OAM SEGMENT CC Deactivate retry count: 3
OAM SEGMENT CC retry frequency: 30 second(s),
OAM Loopback status: OAM Disabled
OAM VC Status: Not Managed
ILMI VC status: Not Managed
PA TxRingLimit: 3
*******InARP DISABLED
InPkts: 76315, OutPkts: 80415, InBytes: 7181185, OutBytes: 7462186
InPRoc: 18554, OutPRoc: 18547, Broadcasts: 0
InFast: 57761, OutFast: 61868, InAS: 0, OutAS: 0
InPktDrops: 0, OutPktDrops: 0/0/0 (holdq/outputq/total)
CrcErrors: 0, SarTimeOuts: 0, OverSizedSDUs: 0, LengthViolation: 0, CPIErrors: 0
Out CLP=1 Pkts: 0
OAM cells received: 26511
F5 InEndloop: 26511, F5 InSegloop: 0,
F5 InEndcc: 0, F5 InSegcc: 0, F5 InAIS: 0, F5 InRDI: 0
F4 InEndloop: 0, F4 InSegloop: 0, F4 InAIS: 0, F4 InRDI: 0
OAM cells sent: 26511
F5 OutEndloop: 26511, F5 OutSegloop: 0,
F5 OutEndcc: 0, F5 OutSegcc: 0, F5 OutAIS: 0, F5 OutRDI: 0
F4 OutEndloop: 0, F4 OutSegloop: 0, F4 OutRDI: 0
OAM cell drops: 0
Status: UP

Ahora vamos a cambiarle la encapsulacion:

test_adsl(config)#
 test_adsl(config)#interface ATM 0.1
 test_adsl(config-subif)#pvc 1/32
 test_adsl(config-if-atm-vc)#encapsulation aal5snap

Y le lanzamos un ping:

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

Vemos que no hace ping.

Si consultamos la interface:

#sh interfaces ATM 0.1

ATM0.1 is up, line protocol is up

Comprobamos los valores para ver si vemos algo mal:

test_adsl_cisco#sh atm vc
VCD /                                        Peak  Avg/Min Burst
 Interface  Name         VPI   VCI  Type   Encaps   SC   Kbps   Kbps   Cells  Sts
 0.1        3              1    32  PVC    SNAP     UBR     316                UP
test_adsl_cisco#sh atm interface ATM 0.1

Interface ATM0:
 AAL enabled:  AAL5   AAL2, Maximum VCs: 10, Current VCCs: 1

VCIs per VPI: 1024,
 Max. Datagram Size: 4528
 PLIM Type: ADSL - 316Kbps Upstream, DMT, TX clocking: LINE
 105542 input, 115257 output, 111765 IN fast, 124628 OUT fast
 Avail bw = 316
 Config. is ACTIVE

Pues toca hacer debug a ver que es lo que vemos.

test_adsl_cisco#debug atm events
DSL: SM: [DMTDSL_STOP -> DMTDSL_INIT]
 DSL: SM: [DMTDSL_INIT -> DMTDSL_DLOAD_1]
.............
DSL(ATM0): Downloaded 100 blocks
 DSL(ATM0): Downloaded 200 blocks
.............
DSL:(ATM0) Downloaded 4121 blocks... Finished!
 DSL(ATM0): Sent command 0x14
...........................
changed current state to do open!!
 DSL: SM: [DMTDSL_DLOAD_2 -> DMTDSL_DO_OPEN]
..............
DSL(ATM0): Sent extended command 0x3
 DSL(ATM0): 1: Modem state = 0x9
 DSL(ATM0): 2: Modem state = 0x9
 DSL(ATM0): 3: Modem state = 0x9
 DSL(ATM0): 4: Modem state = 0x10
 DSL(ATM0): 5: Modem state = 0x10
 DSL(ATM0): 6: Modem state = 0x10
 DSL(ATM0): 7: Modem state = 0x10
 DSL(ATM0): 8: Modem state = 0x10
 DSL(ATM0): 9: Modem state = 0x10
 DSL(ATM0): Received response: 0x24
 DSL(ATM0): Showtime!
ATM0 atmsar_update_us_bandwidth(): upstream bw =316 Kbps
 DSL: SM: [DMTDSL_DO_OPEN -> DMTDSL_SHOWTIME]
.....................
ATM0: atmsar_bringup_interface: Interface and atm_db flags are UP
 ATM0: atmsar_1a_setup_vc, vcinfo = 0x83C93C78
 ATM0 atmsar_vc_setup: vcd 3
.....................
 %LINK-3-UPDOWN: Interface ATM0, changed state to up
test_adsl_cisco#sh dsl interface atM 0
ATM0
 Alcatel 20190 chipset information
 ATU-R (DS)                      ATU-C (US)
 Modem Status:    Showtime (DMTDSL_SHOWTIME)
 DSL Mode:        ITU G.992.5 (ADSL2+) Annex A
 ITU STD NUM:     0x03                            0x2
 Chip Vendor ID:  'STMI'                          'GSPN'
 Chip Vendor Specific:  0x0000                    0x0010
 Chip Vendor Country:   0x0F                      0xFF
 Modem Vendor ID: 'CSCO'                          'GSPN'
 Modem Vendor Specific: 0x0000                    0x1000
 Modem Vendor Country:  0xB5                      0xFF
 Serial Number Near:    FCZ130210HS
 Serial Number Far:
 Modem VerChip ID:        C196P (1) capability-enabled
 DFE BOM:         DFE3.0 Annex M (3)
 Capacity Used:   44%                             100%
 Noise Margin:    20.5 dB                         25.5 dB
 Output Power:    19.0 dBm                        12.0 dBm
 Attenuation:     29.0 dB                         13.0 dB
 Defect Status:   None                            None
 Last Fail Code:  None
 Watchdog Counter: 0x67
 Watchdog Resets: 0
 Selftest Result: 0x00
 Subfunction:     0x00
 Interrupts:      24813 (0 spurious)
 PHY Access Err:  0
 Activations:     4
 LED Status:      ON
 LED On Time:     100
 LED Off Time:    100
 Init FW:         init_AMR-3.0.014_no_bist.bin
 Operation FW:    AMR-3.0.014.bin
 FW Source:       embedded
 FW Version:      3.0.14

DS Channel1      DS Channel0   US Channel1       US Channel0
 Speed (kbps):             0             3008             0               316
 Cells:                    0              245             0            251225
 Reed-Solomon EC:          0                0             0                 0
 CRC Errors:               0                0             0                 0
 Header Errors:            0                0             0                 0
 Total BER:                0E-0           0E-0
 Leakage Average BER:      0E-0           0E-0
 Interleave Delay:         0                0             0                22
 ATU-R (DS)      ATU-C (US)
 Bitswap:               enabled            enabled
 Bitswap success:          0                   0
 Bitswap failure:          0                   0

LOM Monitoring : Disabled
test_adsl_cisco#sh atm vc
VCD /                                        Peak  Avg/Min Burst
 Interface  Name         VPI   VCI  Type   Encaps   SC   Kbps   Kbps   Cells  Sts
 0.1        3              1    32  PVC    SNAP     UBR     316                UP

test_adsl_cisco#sh atm vc 3
Description: N/A
 ATM0.1: VCD: 3, VPI: 1, VCI: 32
 UBR, PeakRate: 316 (746 cps)
 AAL5-LLC/SNAP, etype:0x0, Flags: 0xC20, VCmode: 0x0, Encapsize: 12
 OAM frequency: 0 second(s)
 PA TxRingLimit: 3
 InARP frequency: 15 minutes(s)
 InPkts: 78633, OutPkts: 82917, InBytes: 7601641, OutBytes: 7877982
 InPRoc: 18902, OutPRoc: 18773, Broadcasts: 0
 InFast: 59731, OutFast: 64144, InAS: 0, OutAS: 0
 InPktDrops: 0, OutPktDrops: 0/0/0 (holdq/outputq/total)
 CrcErrors: 0, SarTimeOuts: 0, OverSizedSDUs: 0, LengthViolation: 0, CPIErrors: 0
 Out CLP=1 Pkts: 0
 OAM cells received: 27002
 OAM cells sent: 27002
 Status: UP
test_adsl_cisco#sh atm class-links 1/32

Displaying vc-class inheritance for ATM0.1, vc 1/32:
 no broadcast - Not configured - using default
 encapsulation aal5snap - Configured on vc directly
 no ilmi manage - Not configured - using default
 inarp 15 - Not configured - using default
 no oam-pvc manage - Configured on vc directly
 protocol ip inarp no broadcast - Not configured - using default
 protocol ipx inarp no broadcast - Not configured - using default
 ubr - Not configured - using default

Si ahora hacemos un debug a nivel de paquete IP:

test_adsl_cisco#debug ip packet detail

IP: s=10.0.32.77 (local), d=194.30.0.1 (ATM0.1), len 100, sending
 ICMP type=8, code=0

Y veo en el debug:

ATM0:atmsar_oam_enqueue_vc,pak = 0x82E5C08C
 atmsar_vc_tx_start(82E69370).
 atmsar_transmit_pak_wrapper: deq(82E5C08C). vcd: 3.
 atmsar_transmit_pak_wrapper : encap = Raw
 ATM(ATM0.1): Bad VC(3) encapsulation configured C21

Aquí es interesante mirar este link de cisco para ver más en detalle como solucionar problemas.

Podemos realizar un Ping ATM

test_adsl_cisco#ping atm interface atM 0.1 1 32

Si cambiamos los valores de VCI/VPI, vemos que el status is UP pero el ping ATM…

test_adsl_cisco#sh interfaces ATM 0.1
ATM0.1 is up, line protocol is up
 Hardware is MPC ATMSAR (with Alcatel ADSL Module)
ping atm interface atm 0.1 5 32
Type escape sequence to abort.
 Sending 5, 53-byte end-to-end OAM echoes, timeout is 2 seconds:
test_adsl_cisco#debug atm status
Changing vc 5/32 vc-state to ATM_VC_ESTABLISHING_VC
Changing vc 5/32 vc-state to ATM_VC_NOT_VERIFIED
Changing vc 5/32 vc-state to ATM_VC_UP

Para forense sobre routers cisco parece que tenemos un Disco que no he tenido la oportunidad de probar aun y que ejecuta muchos comandos de forma automática: CREED (Cisco Router Evidence Extraction Disk).

# terminal length 0
 # dir /all
 # show clock detail
 # show ntp
 # show version
 # show running-config
 # show startup-config
 # show reload
 # show ip route
 # show ip arp
 # show users
 # show logging
 # show interfaces
 # show ip interfaces
 # show access-lists
 # show tcp brief all
 # show ip sockets
 # show ip nat translations verbose
 # show ip cache flow
 # show ip cef
 # show snmp users
 # show snmp groups
 # show clock detail
 # exit

Por supuesto que tenemos muchas mas cosas de las que podemos hablar  de protocolos de enrutamiento dinámicos como RIPOSPF o BGP, Multi-Link, VRRP….pero creo que ya es hora de cortar porque sino esto se va a convertir en la novela de nunca acabar.

Ondo Pasa!!!

Enviar a un amigo: Share this page via Email
Categories: cisco, Routers Cisco Tags:
  1. Aitziber
    lunes, 8 de octubre de 2012 a las 22:54 | #1
  2. jose
    viernes, 16 de mayo de 2014 a las 22:06 | #2

    Amigo que gran aporte. Es posible configurar ese mimo router con un cable modem para que tenga salida a internet ????
    yo lo estoy intentando pero no puedo, si tienes tiempo me puedes ayudar??????
    Gracias.

  3. viernes, 25 de julio de 2014 a las 18:02 | #3

    Muy buena aportación, de hecho hace tiempo venía buscando un tutoral para configurar este Cisco por medio de comandos, aunque se ve un poco lioso, vale la pena intentarlo ya que funciona a la perfección! Un saludo y gracias por el interesante artículo!

  4. dorulk
    viernes, 10 de julio de 2015 a las 04:52 | #4

    funcionaria este equipo para vdsl?

  5. pstn1
    lunes, 20 de junio de 2016 a las 18:41 | #5

    With cisco routers you need to save the configuration on a file because it’s big and they do it with this method, normal web acces. And download the sys_backup.bin from remote support logs menu to insert on the router to can restore the SO firmware wth your configuration, directly without need to backp with the bkp file, router has more system than others adsl routers. Useful to upgradings.

  1. Sin trackbacks aún.