Introducción

Netdot (Network Documentation Tool) es una herramienta de software libre diseñada para asistir a los administradores de red a recopilar, organizar y mantener actualizada su documentación de red. Netdot se desarrolla continuamente en la Universidad de Oregón.

Metas

En estos ejercicios vamos a instalar Netdot y demostrar cómo utilizar algunas de sus funcionalidades más importantes.

Notas

Instalación

Puede que Netdot ya esté instalado en su máquina. Pregunte al instructor.

Descargue el paquete

Primero revise si está disponible en el servidor NOC del taller:

$ cd 
$ wget http://noc.ws.nsrc.org/downloads/netdot/netdot-1.0.7.tar.gz

Si no, descárguelo del sitio web oficial:

$ wget http://netdot.uoregon.edu/pub/dists/netdot-1.0.7.tar.gz

Desempaquete:

$ cd
$ tar xzvf netdot-1.0.7.tar.gz
$ cd netdot-1.0.7

Instalación de requisitos:

$ sudo apt-get install build-essential
$ sudo make apt-install

Which RDBMS do you plan to use as backend: [mysql|Pg]? mysql

We need to add a temporary repository of Netdot dependencies until all packages 
are in Debian/Ubuntu official repositories.
Would you like to continue? [y/n] y

Esto descargará un gran número de paquetes. Tómese un café.

(Si no ha instalado ya mysql-server, se le preguntará por la clave del DBA. Pregunte al instructor cuál es la clave de root de MySQL).

Responda que sí (y) a lo siguiente:

We will install the MIB files now. Continue? [y/n] y

Si vea este, responda que sí (y) a lo siguiente:

A new /etc/snmp/snmp.conf needs to be installed to point to the newly 
installed MIB files. The current file will be backed up. Continue? [y/n] y

Verá una lista de módulos Perl, la mayoría se habrá instalado (ok). Si falta alguno (MISSING), haga lo siguiente:

OJO!

Solo es necesario hacer los siguientes pasos si vio un "MISSING" por uno de los modulos de Perl. Si no, vaya al proxímo paso que es "Configuración".

$ make installdeps

Which RDBMS do you plan to use as backend: [mysql|Pg]? mysql

Va a ver tres preguntas sobre la configuración de CPAN para bajar que falta de PERL. Responda así:

Would you like to configure as much as possible automatically? [yes] yes

What approach do you want?  (Choose 'local::lib', 'sudo' or 'manual')
 [local::lib] <ENTER>
 
Would you like me to automatically choose some CPAN mirror
sites for you? (This means connecting to the Internet) [yes] 

Si, todavia tiene dependencias de PERL que estan "missing" haz:

$ sudo make installdeps

Hasta que no vea mas dependencias que dicen "missing".

Esto intentará instalar los módulos Perl usando el repositorio CPAN. Al final todos los módulos deberían aparecer como "ok".

Configuración:

$ cd ~/netdot-1.0.7/
$ cp etc/Default.conf etc/Site.conf
$ editor etc/Site.conf

Busque y cambie las siguientes variables:

NETDOTNAME => 'pcX.ws.nsrc.org',
DB_DBA_PASSWORD => '(el que usó al instalar mysql)',
DEFAULT_SNMPCOMMUNITIES  =>  ['NetManage', 'public'],
NMS_DEVICE => 'pcX.ws.nsrc.org',
DEFAULT_DNSDOMAIN  => 'ws.nsrc.org',
DEVICE_NAMING_METHOD_ORDER => [ 'sysname', 'snmp_target' ],

Grabe y salga.

Parchar la instalación

Vamos a hacer un cambio para hacer más rapído la descarga del archivo de vendedores de ethernet.

Cambia la configuración de Netdot para que se descarga la lista de vendedores de Ethernet desde nuestro servidor local (noc.ws.nsrc.org) y no desde el Internet (se tarda demasiado tiempo de lo contrario):

$ cd ~/netdot-1.0.7/bin/
$ editor Makefile

Encuentra la línea:

wget -t 1 http://standards.ieee.org/regauth/oui/oui.txt || cp oui.txt.default oui.txt

Y, cambiarla a:

wget -t 1 http://noc.ws.nsrc.org/downloads/netdot/oui.txt || cp oui.txt.default oui.txt

Graba y salga del archivo.

Inicializar la base de datos e instalar la aplicación.

Ahora se puede correr la instalación!

$ cd ~/netdot-1.0.7/
$ sudo make installdb
$ sudo make install APACHEUSER=www-data APACHEGROUP=www-data

Ahora copia y pega este comando en un sola línea:


sudo ln -s /usr/local/netdot/etc/netdot_apache24_local.conf /etc/apache2/conf-available/netdot.conf


Y, para terminar:

$ sudo a2enconf netdot
$ sudo service apache2 graceful

Instalar las tareas programadas (cron jobs):

$ sudo cp netdot.cron /etc/cron.d/netdot

Operación

Ingrese en la interfaz web

En su navegador, vaya a:

http://pcX.ws.nsrc.org/netdot

Ingrese con username: admin y password: admin

Cambiar las claves por defecto

Netdot viene con tres claves de usuario por defecto. Debe cambiar las claves de tales cuentas.

Vaya a la pestaña "Contacts" y busque "Admin". Debería ver los detalles del usuario Admin. Oprima [edit] y busque el campo de password. Escriba el password que usó para ingresar en su PC, luego oprima "Update".

Repita los mismos pasos para las otras dos cuentas:

Descubrir nodos de red

Si no lo ha hecho ya, configure SNMP en su PC y en su enrutador.

Pida al instructor que le indique las instrucciones para configurar SNMP en enrutadores Cisco y en Linux

Ahora volvamos a Netdot. Vamos a crear un archivo con todos los nodos de la red del taller (que tengan SNMP):

$ editor /home/sysadm/discoverme.txt

Copie y pegue la siguiente lista:

gw.ws.nsrc.org NetManage
s1.ws.nsrc.org NetManage
sw.ws.nsrc.org NetManage
rtr1.ws.nsrc.org NetManage
rtr2.ws.nsrc.org NetManage
rtr3.ws.nsrc.org NetManage
rtr4.ws.nsrc.org NetManage
rtr5.ws.nsrc.org NetManage
rtr6.ws.nsrc.org NetManage
rtr7.ws.nsrc.org NetManage
rtr8.ws.nsrc.org NetManage
rtr9.ws.nsrc.org NetManage
pc1.ws.nsrc.org NetManage
pc2.ws.nsrc.org NetManage
pc3.ws.nsrc.org NetManage
pc4.ws.nsrc.org NetManage
pc5.ws.nsrc.org NetManage
pc6.ws.nsrc.org NetManage
pc7.ws.nsrc.org NetManage
pc8.ws.nsrc.org NetManage
pc9.ws.nsrc.org NetManage
pc10.ws.nsrc.org NetManage
pc11.ws.nsrc.org NetManage
pc12.ws.nsrc.org NetManage
pc13.ws.nsrc.org NetManage
pc14.ws.nsrc.org NetManage
pc15.ws.nsrc.org NetManage
pc16.ws.nsrc.org NetManage
pc17.ws.nsrc.org NetManage
pc18.ws.nsrc.org NetManage
pc19.ws.nsrc.org NetManage
pc20.ws.nsrc.org NetManage
pc21.ws.nsrc.org NetManage
pc22.ws.nsrc.org NetManage
pc23.ws.nsrc.org NetManage
pc24.ws.nsrc.org NetManage
pc25.ws.nsrc.org NetManage
pc26.ws.nsrc.org NetManage
pc27.ws.nsrc.org NetManage
pc28.ws.nsrc.org NetManage
pc29.ws.nsrc.org NetManage
pc30.ws.nsrc.org NetManage
pc31.ws.nsrc.org NetManage
pc32.ws.nsrc.org NetManage
pc33.ws.nsrc.org NetManage
pc34.ws.nsrc.org NetManage
pc35.ws.nsrc.org NetManage
pc36.ws.nsrc.org NetManage

Ahora indique a Netdot que descubra estos nodos:

$ cd /usr/local/netdot
$ sudo bin/updatedevices.pl -E /home/sysadm/discoverme.txt -IAF

Cuando esto termine, vaya a la interfaz web y busque:

Management -> Devices

Deje la caja de búsqueda vacía, y oprima el botón "Find".

Debería ver todos los dispositivos descubiertos en una lista. Use el enlace para ver el enrutador de su grupo (rtrX.ws.nsrc.org, pero puede aparecer como rtrX-fa0-0.ws.nsrc.org).

Cómo encontrar una máquina en su red

Netdot le mostrará cuáles dispositivos registraron esa dirección MAC la última vez que Netdot descubrió la red.

Administración del Espacio de Direcciones

Vaya a Management -> Address Space

Verá una lista de bloques IP privados (RFC-1918). Estos vienen pre-instalados en Netdot)

Haga click en 10.0.0.0/8

Verá una lista de bloques IP descubiertos, los cuales estarán marcados como "Subnet". Estos se encontaron en sus enrutadores.

Crear un bloque contenedor (Container) que agrupe todas las subredes

En la sección llamada "Address Space Tasks" en la parte de arriba, oprima "[new]" e ingrese lo siguiente:

Ahora verá la página del nuevo Container. Muestra una representación gráfica del bloque /16. Todas las subredes existentes se muestran en rojo. El espacio en verde representa espacio de direcciones disponible.

Descubrimiento periódico de dispositivos

Netdot necesita sondear sus dispositivos (enrutadores, switches, servidores) para recopilar las tablas de ARP, tablas de conmutación, descubrir nuevas interfaces, etc.

Ejecute el comando que reliza esto:

$ sudo /usr/local/netdot/bin/updatedevices.pl -DIFAT

Para evitar tener que ejecutar esto manualmente, Netdot viene con un archivo de tareas programadas (CRON), el cual servirá para efectuar estas tareas a diferentes momentos del día (ej: cada hora). Eche un vistazo al contenido de este archivo /etc/cron.d/netdot. Va a ver que este comando se ejecuta una vez cada hora por defecto.

Más información

Sitio web oficial de Netdot