Академический Документы
Профессиональный Документы
Культура Документы
C
Redes de Informacin (RIN)
PRCTICAS DE HERRAMIENTAS
SOBRE EL NIVEL DE RED (IP)
OBJETIVOS:
NOTAS IMPORTANTES:
1. /sbin/ifconfig
Comando ifconfig.
Ifconfig (interface configuration) es el comando utilizado para configurar la interfaz o interfaces de red
durante la fase de arranque del sistema. Cuando se ejecuta sin argumentos (Ej.: $ ifconfig) muestra el
estado de los interfaces de red disponibles. Si al ejecutarse se da como argumento el nombre de alguno de
los interfaces de red disponibles (Ej.: $ ifconfig eth0) slo se muestra informacin sobre esta
interfaz.
Informacin que se proporciona a cerca de cada interfaz:
67
Descripcin.
Nombre de la interfaz.
Nivel de Enlace.
Nivel de Red.
Estado de la interfaz y
facilidades que admite
MTU.
Ejercicio 1.2) Visualizar slo informacin sobre el estado de la interfaz de red eth0.
Cuestionario 1.2
2. /bin/netstat
Comando netstat.
Comando mediante el que se puede obtener el estado de las conexiones activas de red. Utilizando
este comando tambin es posible ver la tabla de rutas del equipo sobre el que se ejecuta e
informacin sobre las interfaces de red.
Los estndares de comunicaciones definen las reglas necesarias para el intercambio de datos por
una red. Sin embargo, hasta hace poco se haba ignorado la necesidad de estandarizar las
Interfaces de programacin de aplicaciones (API) para las comunicaciones. Cmo escribir una
aplicacin cliente/servidor si los programas son completamente diferentes en distintas
computadoras?.
Afortunadamente, la mayora de las implementaciones de TCP/IP ofrecen una interfaz de
programacin que sigue un modelo nico, la Interfaz de programacin de conectores (sockets).
Los BSD sockets, como se los denomina comnmente, son un estndar de facto porque se
encuentran casi universalmente disponibles y debido a su amplio uso.
Ejercicio 1.2) Ver el estado de todos los sockets (conexiones) activos mediante el comando
netstat con el parmetro -a. En caso de ser demasiados, paginarlos con el comando
more. Ej: $ netstat a | more
Muestra por una parte una tabla con todas las conexiones activas abiertas a travs de internet.
Para cada entrada se especifica el protocolo empleado (tcp, udp, raw...), el nmero de paquetes
recibidos , el nmero de paquetes enviados, direccin origen , direccin destino, estado del
interfaz (LISTEN, ESTABLISHED ...)
Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address
Foreign Address
(State)
tcp
0
0 *:680
*:*
LISTEN
tcp
0
0 *:netbios-ssn
*:*
LISTEN
tcp
0
0 *:finger
*:*
LISTEN
tcp
0
0 *:time
*:*
LISTEN
tcp
0
0 *:chargen
*:*
LISTEN
tcp
0
0 mali.eui.upm.es:1032 uganda.eui.upm.:telnet
tcp
0
0 mali.eui.upm.es:1032 uganda.eui.upm.:telnet ESTABLISHED
udp
0
0 *:time
*:*
udp
0
0 mali.eui.upm.es:1044 fenix.eui.upm.e:domain
udp
0
0 *:chargen
*:*
udp
0
0 *:2049
*:*
raw
0
0 mali.eui.upm.es:1
*:*
raw
0
930 mali.eui.upm.es:1
*:*
raw
0
9300 mali.eui.upm.es:1
*:*
raw
0
10230 mali.eui.upm.es:1
*:*
69
A continuacin de la primera tabla se muestra una segunda con informacin sobre los
sockets abiertos por el sistema para su uso interno.
Active UNIX domain sockets
Proto RefCnt Flags
Type
State
Path
unix 2
[]
SOCK_STREAM CONNECTED /tmp/.X11-unix/X0
unix 2
[]
SOCK_STREAM CONNECTED
unix 2
[]
SOCK_STREAM CONNECTED
/tmp/.X11-unix/X0
unix 2
[]
SOCK_STREAM CONNECTED
unix 2
[]
SOCK_STREAM CONNECTED
/tmp/.X11-unix/X0
unix 2
[]
SOCK_STREAM CONNECTED
unix 2
[]
SOCK_STREAM CONNECTED
/tmp/.X11-unix/X0
unix 1
[]
SOCK_STREAM DISCONNECTING /dev/printer
unix 2
[]
SOCK_STREAM CONNECTED
/tmp/.X11-unix/X0
unix 2
[]
SOCK_STREAM CONNECTED
/tmp/.X11-unix/X0
unix 2
[]
SOCK_STREAM CONNECTED
unix 2
[]
SOCK_STREAM CONNECTED
Cuestionario 2.1
Estn abiertos los servidores que utilizamos en la prctica del nivel de aplicacin, como por
ejemplo telnet, http, www, ftp, smtp, pop-3, imap? Indique cules s y cules no.
Sugerencia: Haga netstat -a > estado.txt y a continuacin edite el archivo
estado.txt.
Abra otra terminal y conctese ahora a la mquina <hypercube> con telnet (no es necesario
especificar el puerto). Ej: $ telnet hypercube. Ingresar con el nombre de usuario redes y con la passwd
redesrin.
Estn abiertos los servidores que utilizamos en la prctica del nivel de aplicacin, como por
ejemplo telnet, http, www, ftp, smtp, pop-3, imap?
En qu estado estn? Por qu?
Ha cambiado algo respecto a la situacin anterior? Por qu? Razone.
Cuantos sockets activos tiene en ambas mquinas (la local e hypercube)
Sugerencia: Recorte el archivo.txt resultante y emplee la utilidad wc de Linux (cuenta
palabras, pero tambin lneas!).
70
Ejercicio 2.2) Obtener informacin sobre el estado de los interfaces del sistema mediante netstat
-i.
Tendra que verse algo parecido a:
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR
Flags
lo 2000 0
0
0
0
0 12
0
0
0 BLRU
eth0 1500 0 26725 0 0 0 239 0 0 0 BRU
Cuestionario 2.2
Ejercicio 2.3)
71
3. /bin/ping
Comando ping.
El comando ping se suele utilizar para comprobar de forma rpida si se puede establecer conexin
entre dos equipos. Su nombre se ha tomado de la operacin de sonar que consiste en localizar un
objeto y el programa fue escrito por Mike Muuss. El comando ping se basa en una funcionalidad,
llamada echo, que proporciona el protocolo ICMP (Internet Control Message Protocol).
La funcionalidad echo de ICMP consiste en que una entidad ICMP emisora enve un pequeo
paquete de datos a un determinado equipo, cuando la entidad ICMP correspondiente al equipo de
destino recibe el paquete simplemente se lo reenva a la entidad emisora.
El valor del campo Tipo del mensaje ICMP ser 0 para un mensaje echo request ( peticin de
echo) o 8 para un mensaje echo response ( respuesta de echo). En los dos casos el valor del campo
Cdigo ser 0. En las implementaciones de ping sobre sistemas UNIX (como Linux) el campo
Identificador de la cabecera ICMP corresponde al ID del proceso emisor. El Nmero de Secuencia
comienza desde 0 y se va incrementando en uno por cada nueva peticin de echo.
La primera lnea de informacin que nos muestra el comando ping proporciona el nombre y la
direccin IP del equipo hacia el que se ha hecho un ping, adems de la cantidad de bytes de datos
que se envan en cada paquete, que suelen ser 56. Cada una de las lneas que se van sucediendo
despus de la primera, corresponden a cada uno de los paquetes que se reciben en respuesta a cada
uno de los paquetes ICMP enviados.
La implementacin de ping con la que estamos trabajando enva una peticin de echo (ICMP echo
request) cada segundo, cuando llega la correspondiente respuesta (ICMP echo reply) se genera
una lnea con la siguiente informacin; longitud en bytes del paquete ICMP recibido (64 = 8 bytes
de cabecera ICMP + 56 de datos), la direccin IP del equipo emisor, el valor del campo Nmero
de Secuencia del paquete ICMP recibido, el valor del campo TTL de la cabecera IP y el tiempo
transcurrido desde la emisin del paquete de peticin correspondiente.
Por ltimo, la ejecucin del comando ping se interrumpe con la secuencia de teclas <Ctrl-C>, el
programa termina mostrando una pequea estadstica sobre el nmero de paquetes enviados y
recibidos durante la sesin.
Ejercicio 3.1) Realizar un ping hacia alguno de los equipos del curso, por ejemplo
$ ping 172.16.8.3. (Cancelar con <Ctrl-C>). Intentar ahora con labsis y con
vendikar (Ej: $ ping labsis)
Observar el retardo y el valor del campo TTL.
72
un
ping
www.altavista.com,
organia
Cuestionario 3.3
4. /usr/bin/nslookup
Comando Nslookup.
Este comando permite realizar consultas sobre los nombres lgicos de determinadas mquinas (Se
entiende por nombre lgico de una mquina cosas como arpa.it.uc3m.es, gabon.eui.upm.es ...)
dirigidas al servidor de nombres. Tambin permite obtener informacin sobre el servidor o
servidores de nombres activos en un dominio determinado (el dominio de la Universidad
Tecnolgica Nacional sera utn.edu.ar)
Servidores de Nombres.
El servicio DNS (Domain Name Server) es el encargado de traducir en Internet los nombres de los
recursos por direcciones IP, traduce la direcciones lgicas en formato cannico (rondo.eui.upm.es)
a direcciones numricas en formato IP (138.100.58.18) .
El funcionamiento es el siguiente, dentro de la mquina del usuario de la red existe un agente local
, llamado Resolver, que se encarga de obtener la informacin asociada a los dominios. El agente
local obtiene la informacin asociada a los dominios. El agente local o Resolver utiliza el servicio
DNS, formado por un conjunto de servidores de nombres, para dar al usuario del sistema la
informacin solicitada.
73
Si por ejemplo, desde nuestra mquina local queremos acceder al servidor web www.yahoo.com
entonces se suceden la siguiente serie de acciones:
1. La aplicacin de usuario (Ej: Netscape) pide al agente local Resolver que le de la direccin
IP que corresponde al nombre www.yahoo.com.
2. Resolver consulta su cach, donde guarda el resultado de las ltimas consultas, por si esa
peticin ya se hubiera realizado.
3. Si no estuviera en la cach, Resolver empezara a realizar consultas a los servidores de
nombres hasta encontrar el servidor del dominio yahoo.com.
4. Una vez localizado el servidor de nombres para el dominio yahoo.com, el agente local le
solicita la direccin IP del equipo cuyo nombre es www.yahoo.com.
5. El servidor de nombres consulta sus ficheros maestros y si la consulta es positiva devuelve
la direccin IP correspondiente.
6. Por ltimo el agente Resolver contesta a la aplicacin de usuario que a solicitado al
direccin IP.
Cada dominio tiene que tener al menos dos servidores de nombres uno primario y otro secundario
que respalda al primero en caso de fallo. Sobre el servidor de nombres secundario se mantiene una
copia de los registros de recursos del primario, esta informacin es actualizada peridicamente.
Los archivos maestros que mantiene los servidores de nombres estn formados por Registros de
Recursos (RR). Cada Registro de Recurso contiene informacin sobre los recursos asociados a un
determinado dominio. Existen varios tipos de Registros de Recursos (A, CNAME, HINFO, MX,
NS, PTR, SOA):
SOA (Start of Authority), Indica cual es la autoridad que rige un dominio determinado. Es el
registro que contiene informacin sobre el dominio, como el nombre del servidor de nombres
o la direccin de correo del administrador del dominio, el resto de datos son parmetros de
coordinacin entre el servidor primario y el secundario:
74
En ambos casos la salida que se genera se compone en primer lugar del nombre simblico junto
con la direccin IP del servidor de nombres utilizado (Ej.: Server: vendikar.frc.utn.edu.ar
Address: 172.16.8.254) y en segundo lugar el nombre simblico objeto de consulta y de su
direccin IP correspondiente. Observar que una misma direccin IP puede tener asociada ms de
un nombre simblico.
75
Ejercicio 4.2) Buscar los servidores de nombres que funcionan para el dominio
utn.edu.ar.
Para ello ejecutar nslookup para entrar en el entorno de esta aplicacin (Ej.:
$ nslookup).
Una vez en el entorno de la aplicacin nslookup ejecutar la sentencia set
type=NS (con lo que se cambia el modo de consulta). En este momento
ejecutar utn.edu.ar.
La informacin que obtenemos empieza como antes con el nombre y la direccin IP del servidor
de nombres utilizado por defecto. Despus una lista de los nombres de todos los servidores de
nombres asociados al dominio dado. Por ltimo las direcciones IP de todos estos servidores de
nombres.
Ejercicio 4.3) Obtener las caractersticas del servidor de nombres asociado al dominio
utn.edu.ar.
Cuestionario 4.3
76