PROTOCOLO IP – LABORATORIO WIRESHARK
En el presente laboratorio, trabajaremos el protocolo IP; en particular la estructura de los
encabezados y el funcionamiento de la fragmentación.
CAPTURA DE PAQUETES
Emplearemos el programa traceroute para enviar datagramas de diferentes tamaños hacia
algún destino en particular. Recuerden que el programa traceroute funciona enviando
primero uno o más datagramas hacia el destino con el campo de time-to-live (TTL) fijado en 1,
luego hace lo mismo fijando el TTL en 2, luego en 3, y así sucesivamente. Los enrutadores que
procesen el datagrama deben disminuir el TTL en 1. Si el TTL alcanza un valor de cero, se envía
al host de origen un mensaje ICMP TTL-EXCEEDED. Como resultado de esto, un datagrama con
un TTL igual a 1 hará que el primer enrutador que está en el camino entre origen y destino
(primer hop) conteste con el mensaje TTL-EXCEEDED; los datagramas con TTL igual a 2 harán
que el enrutador del segundo hop conteste, y así sucesivamente. De esta manera, el
computador donde se ejecuta el traceroute puede determinar cuáles son los enrutadores que
hay entre él y el computador destino, leyendo las direcciones de las respuestas TTL-EXCEEDED.
Se requiere enviar datagramas de varios tamaños con traceroute en esta práctica.
• Para Windows: La utilidad tracert que viene con Windows no permite cambiar el
tamaño del datagrama que se envía. Por lo tanto, si van a hacer la tarea con Windows,
deben emplear el programa PingPlotter Free (disponible en
[Link] que sí permite ajustar dicho tamaño (menú Edit ->
Options -> Packet Options).
• Para Linux / Unix / macOS: Se puede especificar la longitud del paquete después del
host destino, por ejemplo: traceroute [Link] 2000
Se harán tres capturas: Una con paquetes de 56 bytes, otra con paquetes de 2000 bytes, y una
última con paquetes de 3500 bytes. Haga un traceroute a un host cercano. Para que no tenga
problemas con la captura (en algunas redes el tráfico ICMP está inhabilitado), hágala desde el
laboratorio de redes, o en su casa.
Con respecto a la captura con paquetes de 56 bytes, conteste las siguientes preguntas:
1. Seleccione el primer paquete ICMP ECHO-REQUEST enviado por su computador. ¿Cuál
es la dirección IP de su computador?
2. Dentro del encabezado IP, ¿cuál es el valor del campo “protocolo de nivel superior”?
3. ¿Cuántos bytes tiene el encabezado IP? ¿Cuántos bytes hay en el payload del datagrama
IP? Explique cómo calculó este valor.
4. ¿El datagrama está fragmentado? Explique cómo determinó si el datagrama estaba o no
fragmentado.
Ahora, ordene los paquetes de acuerdo con su dirección fuente IP, haciendo clic sobre el
encabezado de la columna SOURCE. Verifique que la flechita que aparece en la columna apunte
hacia abajo; si apunta hacia arriba pulse de nuevo sobre la columna. Busque el primer
datagrama ECHO-REQUEST enviado por su computador, y desplácese hacia abajo para ver el
resto.
5. ¿Cuáles campos del datagrama IP cambian siempre de un datagrama a otro, en esta
serie de datagramas enviados desde su computador?
6. ¿Cuáles campos permanecen constantes? ¿Cuáles debe permanecer constantes?
¿Cuáles deben cambiar? ¿Por qué?
7. Describa el patrón que se puede observar en los valores del campo Identification de los
datagramas.
Ahora (con los paquetes aún ordenados por fuente) seleccione el primer datagrama de la serie
de respuestas recibidas desde el enrutador del primer hop.
8. ¿Cuáles son los valores de los campos Identification y TTL?
9. ¿Permanecen estos valores inalterados para todas las respuestas TTL-EXCEEDED
recibidas desde el enrutador del primer hop? ¿Por qué?
FRAGMENTACIÓN
Ahora, emplee la captura donde se usaron paquetes de 2000 bytes. Ordénela por tiempo
(columna TIME).
10. Encuentre el primer mensaje ICMP ECHO-REQUEST enviado por su computador.
¿Resultó el mensaje fragmentado en más de un datagrama IP?
11. Haga una captura de pantalla del primer fragmento. ¿Qué información del encabezado
IP indica que el datagrama está fragmentado? ¿Qué información indica que es el primer
fragmento? ¿Qué longitud tiene el datagrama?
12. Haga una captura de pantalla del segundo fragmento. ¿Qué información del encabezado
indica que éste no es el primer fragmento? ¿Hay más fragmentos? ¿Cómo pudo
determinarlo?
13. ¿Qué campos del encabezado IP cambian entre el primer y el segundo fragmentos?
Por último, emplee la captura donde se usaron paquetes de 3500 bytes.
14. ¿En cuántos fragmentos se dividió el datagrama original?
15. ¿Cuáles campos cambian en el encabezado IP entre fragmentos?