Está en la página 1de 10

Departamento de Sistemas de Comunicación y Control

Redes y Comunicaciones

Enunciado de la 3ª Actividad de evaluación

Protocolo IP
Actividad: Protocolo IP

Actividades de evaluación

A lo largo del curso deberá realizar tres actividades de evaluación que supondrán el
30 por ciento de la calificación final en la convocatoria ordinaria de febrero y, esta
misma calificación supondrá el 10 por ciento de la calificación final en la
convocatoria extraordinaria de septiembre. Estas actividades serán corregidas por
los Tutores a los que el Equipo docente dará pautas para su evaluación.

Una forma de profundizar en la comprensión de los protocolos de red es "ver los


protocolos en acción" y "jugar con ellos" - observando la secuencia de mensajes
intercambiados entre dos entidades de protocolo, profundizando en los detalles del
funcionamiento del protocolo y haciendo que los protocolos realicen ciertas
acciones y luego observar estas acciones y sus consecuencias. En este curso
realizaremos esto mediante las actividades con Wireshark. Dichas actividades y
otras más son material complementario del libro de texto Redes de Computadoras:
Un enfoque descendente, 7th ed., J.F. Kurose and K.W. Ross. El equipo docente ha
traducido y completado los enunciados para que tenga una mayor facilidad de
compresión de los mismos, pero observe que no es material libre,

© 2005-2016, J.F Kurose and K.W. Ross, All Rights Reserved

por lo que sólo puede ser utilizado dentro de, y para el propósito de, este curso al
estar dicho curso protegido con su clave de entrada de estudiante, quedando
totalmente prohibido su uso más allá del ámbito de esta asignatura y su
redistribución.

Para cada una de las tres actividades deberá elaborar un informe lo más completo
posible que dé respuesta a las preguntas que se indiquen y entregarlo a través del
curso virtual, dentro de los plazos establecidos.

1.3
Redes y comunicaciones

3ª Actividad: Protocolo IP

En este laboratorio investigaremos el protocolo IP, centrándonos en el datagrama


IP. Lo haremos analizando una traza de datagramas IP enviados y recibidos por
una ejecución del programa traceroute. Vamos a investigar los diversos campos
en el datagrama IP y estudiar la fragmentación IP en detalle.

Antes de comenzar esta práctica, es aconsejable revisar las secciones 1.4.3 del
libro de texto y la sección 3.4 del RFC 2151 [ftp://ftp.rfc-editor.org/in-
notes/rfc2151.txt] para repasar la forma de operación de traceroute. También le
sugerimos estudiar la sección 4.3 del libro de texto y consultar el RFC 791
[ftp://ftp.rfc-editor.org/in-notes/rfc791.txt] para una mayor compresión del Protocolo
IP.

1. Captura de paquetes de una ejecución de traceroute

Con el fin de generar una traza de datagramas IP para esta práctica, vamos a
utilizar el programa traceroute para enviar datagramas de diferentes tamaños
hacia algún destino, X. Recuerde que traceroute opera enviando primero uno o
más datagramas con el campo tiempo de vida (TTL) en la cabecera IP puesto a 1;
entonces, envía una serie de uno o más datagramas hacia el mismo destino con un
valor de TTL de 2; entonces, envía una serie de datagramas hacia el mismo destino
con un valor de TTL de 3, y así sucesivamente. Recuerde que un router debe
disminuir el TTL en cada datagrama recibido en 1 (en realidad, el RFC 791 dice que
el router debe disminuir el TTL por lo menos en uno). Si el TTL llega a 0, el router
devuelve un mensaje ICMP (tipo 11 - TTL-exceeded) al host emisor. Como
resultado de este comportamiento, un datagrama con un TTL de 1 (enviado por el
host que ejecuta traceroute) hará que el router a un salto de distancia del emisor
envíe un mensaje ICMP de TTL-exceeded de vuelta al emisor; el datagrama
enviado con un TTL de 2 hará que el router a dos saltos de distancia envíe un
mensaje ICMP de TTL-exceeded de vuelta al emisor; el datagrama enviado con un
TTL de 3 hará que el router a tres saltos de distancia envíe un mensaje ICMP de

1.4
Actividad: Protocolo IP

vuelta al emisor, y así sucesivamente. De esta manera, el host que ejecuta


traceroute puede aprender las identidades de los routers entre sí y del destino X
mirando las direcciones IP de origen en los datagramas que contienen los
mensajes ICMP TTL-exceeded.

Queremos ejecutar traceroute y enviar datagramas de varias longitudes. Para


ello:

 En Windows. El programa tracert proporcionado con Windows no permite


cambiar el tamaño del mensaje de solicitud de eco ICMP (ping) enviado por el
programa tracert. Un mejor programa de traceroute de Windows es
pingplotter, disponible tanto en versión gratuita como en versiones de
shareware en http://www.pingplotter.com. Descargue e instale pingplotter y
realice unas cuantas pruebas a sus sitios favoritos. El tamaño del mensaje de
solicitud de eco ICMP se puede establecer explícitamente en pingplotter
seleccionando el elemento de menú Edit-> Options-> Default
Settings y rellenando el campo Packet size. El tamaño de paquete
predeterminado es 56 bytes. Una vez pingplotter ha enviado una serie de
paquetes aumentando los valores TTL, se reinicia el proceso de envío de nuevo
con un TTL de 1, después de esperar la cantidad de tiempo Trace Interval.
El valor de Trace Interval y el número de intervalos pueden establecerse
explícitamente en pingplotter.

 En Linux / Unix / MacOS. Con el comando traceroute Unix / MacOS, el


tamaño del datagrama UDP enviado hacia el destino se puede establecer
explícitamente indicando el número de bytes en el datagrama; este valor se
introduce en la línea de comandos traceroute inmediatamente después del
nombre o dirección del destino. Por ejemplo, para enviar datagramas
traceroute de 2000 bytes hacia gaia.cs.umass.edu, el comando sería:

% traceroute gaia.cs.umass.edu 2000

1.5
Redes y comunicaciones

Haga lo siguiente:

 Arranque Wireshark e inicie la captura de paquetes (Capturar-> Inicio) y


luego presione OK en la pantalla Opciones de captura de paquetes de
Wireshark (no necesitaremos seleccionar ninguna opción aquí).

 Si está utilizando Windows, inicie pingplotter e introduzca el nombre de un


destino en la ventana "Enter tarjet name or IP". Escriba 3 en el campo
"# of times to Trace", para que no recoja demasiado datos. Seleccione
el elemento de menú e introduzca un valor de 56 en el campo Packet size y
pulse OK. A continuación, pulse el botón Trazar. Debería ver una ventana de
pingplotter como la de la Figura 1.

Figura 1: Ventana pingplotter.

1.6
Actividad: Protocolo IP

A continuación, envíe un conjunto de datagramas con una longitud más larga,


seleccionando en el tamaño de paquete un valor de 2000. A continuación, pulse
el botón Reanudar.

Por último, envíe un conjunto de datagramas con una longitud más larga,
seleccionando un valor de 3500 en el campo del tamaño de paquete y luego
presione Aceptar. A continuación, pulse el botón Reanudar.

Detenga el rastreo de Wireshark.

 Si utiliza una plataforma Unix o Mac, introduzca tres comandos traceroute,


uno con una longitud de 56 bytes, otro con una longitud de 2000 bytes y otro
con una longitud de 3500 bytes.

Detenga el rastreo de Wireshark.

A continuación, descargue el siguiente archivo de traza de paquetes que se capturó


siguiendo los pasos anteriores en uno de los equipos de los autores del libro:
http:/gaia.cs.umass.edu/wireshark-labs/wireshark-traces.zip. Extraiga el archivo ip-
ethereal-trace-1. Una vez descargada la traza, puede cargarla en Wireshark y verla
mediante el menú desplegable File, eligiendo Open y, a continuación,
seleccionando el archivo de traza ip-ethereal-trace-1.

Responda las siguientes preguntas a partir de este archivo de paquetes. No


responda a partir de la captura que ha realizado en su computadora salvo que
se le indique explícitamente.

2. Una mirada a la traza capturada

En la traza debería poder ver las series de ICMP Echo Request (en el caso de una
máquina Windows) o el segmento UDP (en el caso de Unix) enviado por la
computadora y los mensajes ICMP TTL-exceeded devueltos a la computadora por
los routers intermedios. En las preguntas siguientes tenga en cuenta que la traza se
ha capturado con una máquina Windows. Siempre que sea posible, al responder a
una pregunta,  Incluya en su informe una copia impresa del paquete(s) dentro de
la traza que utilizó para responder a la pregunta. Cuando entregue su tarea,

1.7
Redes y comunicaciones

anote/resalte la salida para que quede claro en qué parte de la salida está
recibiendo la información de su respuesta. Para imprimir un paquete, utilice
Archivo-> Imprimir, elija Sólo paquete seleccionado, seleccione Línea
de resumen de paquetes y seleccione la cantidad mínima de detalle de
paquetes que necesita para responder a la pregunta.

1. Seleccione el primer mensaje ICMP Echo Request enviado por la


computadora y expanda la parte Protocolo de Internet del paquete en la
ventana de detalles de paquetes.

¿Cuál es la dirección IP de la computadora?

2. Dentro del encabezado del paquete IP, ¿cuál es el valor en el campo del
protocolo de capa superior?

3. ¿Cuántos bytes hay en la cabecera IP? ¿Cuántos bytes hay en la carga útil
del datagrama IP? Explique cómo determinó el número de bytes de carga.

4. ¿Ha sido fragmentado este datagrama IP? Explique cómo determinó si el


datagrama se ha fragmentado o no.

A continuación, ordene los paquetes rastreados de acuerdo con la dirección


de origen IP haciendo clic en el encabezado de la columna Source; una
pequeña flecha que apunta hacia abajo debe aparecer junto a la palabra

1.8
Actividad: Protocolo IP

Source. Si la flecha apunta hacia arriba, vuelva a hacer clic en el


encabezado de la columna Source. Seleccione el primer mensaje ICMP
Echo Request enviado por el equipo y expanda la parte Protocolo de
Internet en la ventana "detalles del encabezado de paquete seleccionado".
En la ventana "Listado de paquetes capturados" debería ver todos los
mensajes ICMP subsiguientes (tal vez con paquetes intercalados adicionales
enviados por otros protocolos que se ejecutan en el equipo) debajo de este
primer ICMP. Utilice la flecha hacia abajo para desplazarse por los mensajes
ICMP enviados por la computadora.

5. ¿Qué campos del datagrama IP siempre cambian de un datagrama a otro


dentro de esta serie de mensajes ICMP enviados por la computadora?

6. ¿Qué campos permanecen constantes? ¿Cuáles de los campos deben


permanecer constantes? ¿Qué campos deben cambiar? ¿Por qué?

7. Describa el patrón que ve en los valores del campo Identificación del


datagrama IP

A continuación (con los paquetes aún ordenados por dirección de origen) encuentre
la serie de respuestas ICMP TTL superadas enviadas a la computadora por el
router más cercano (primer salto).

8. ¿Cuál es el valor en el campo Identificación y el campo TTL?

9. ¿Estos valores permanecen sin cambios para todas las respuestas ICMP
TTL superadas enviadas al equipo por el router más cercano (primer salto)?
¿Por qué?

3. Fragmentación

Ordene la lista de paquetes según la hora de nuevo haciendo clic en la columna


Tiempo.

10. Busque el primer mensaje ICMP Echo Request que fue enviado por la
computadora después de haber cambiado el tamaño de paquete en

1.9
Redes y comunicaciones

pingplotter a 2000. ¿Ha sido fragmentado ese mensaje en más de un


datagrama IP? [Si la computadora tiene una interfaz Ethernet, un tamaño de
paquete de 2000 debería causar fragmentación.] 1

11. Imprima el primer fragmento del datagrama IP fragmentado. ¿Qué


información en el encabezado IP indica que el datagrama ha sido
fragmentado? ¿Qué información en el encabezado IP indica si este es el
primer fragmento versus un último fragmento? ¿Cuánto dura este datagrama
IP?

12. Imprima el segundo fragmento del datagrama IP fragmentado. ¿Qué


información en el encabezado IP indica que este no es el primer fragmento
del datagrama? ¿Hay más fragmentos? ¿Cómo puede saberlo?

13. ¿Qué campos cambian en la cabecera IP entre el primer y segundo


fragmento?

Ahora encuentre el primer mensaje ICMP Echo Request que fue enviado por la
computadora después de cambiar el Tamaño de Paquete en pingplotter para
ser 3500.

14. ¿Cuántos fragmentos se crearon a partir del datagrama original?

15. ¿Qué campos cambian en la cabecera IP entre los fragmentos?

1
Los paquetes del archivo de trazas ip-ethereal-trace-1 en http://gaia.cs.umass.edu/wireshark-
labs/wireshark-traces.zip tienen menos de 1500 bytes. Esto se debe a que el equipo en el que se ha
reunido la traza tiene una tarjeta Ethernet que limita la longitud del paquete IP máximo a 1500 bytes
(40 bytes de datos de cabecera TCP / IP y 1460 bytes de carga de protocolo de capa superior). Este
valor de 1500 bytes es la longitud máxima estándar permitida por Ethernet.

Si captura la trama con su computadora y ésta dispone de una conexión Ethernet tal vez encuentre
en la captura un datagrama más largo 1500 bytes. En este caso Wireshark está divulgando la
longitud incorrecta del datagrama del IP; probablemente también mostrará un único datagrama IP
grande en lugar de múltiples datagramas más pequeños. Esta inconsistencia en las longitudes
reportadas se debe a la interacción entre el controlador Ethernet y el software Wireshark.

1.10

También podría gustarte