Ejercicios de evaluación. Curso 2019 2020. Bloque II - Obijuan/URJC-Gsyc-2018-Arquitectura-Internet GitHub Wiki

Introducción

  • Ejercicios de evaluación y sus soluciones correspondientes al bloque II de prácticas: Protocolos, Ethernet, Direcciones IP y enrutamiento

Enunciado en PDF

Soluciones

Parte I: Protocolos y Ethernet

Abre el fichero de captura captura1.cap con wireshark y responde a las siguientes preguntas:

  1. ¿Cuantas tramas se han capturado en total?
  • Sol: 54
  1. Accede a la trama capturada a los 184.088902 segundos. Indica qué protocolos se usan y a qué nivel de la arquitectura TCP/IP corresponden
  • Sol:
    • HTTP: Nivel de aplicación
    • TCP: Nivel de transporte
    • IP: Nivel de Internet
    • Ethernet: Nivel físico
  1. Seguimos con la misma trama anterior, capturada a los 184.088902 segundos y responde a las siguientes preguntas:
  • 3.1: ¿Cuantos bytes se envía por el cable físico? (Sin contar el preámbulo y el CRC)

    • Sol: 171
  • 3.2. ¿Y contando el CRC?

    • Sol: 171 + 4
  • 3.3. ¿Cuantos bytes tiene la cabecera del protocolo Ethernet?

    • Sol: 14
  • 3.4. ¿Cuántos bytes tiene la cabecera del protocolo IP? (si lo usa)

    • Sol: 20
  • 3.5. ¿Cuántos bytes tiene la cabecera del protocolo TCP? (si lo usa)

    • Sol: 32
  • 3.6. ¿Cuántos bytes tiene la parte del protocolo HTTP? (si lo usa)

    • Sol: 105
  1. Usando la misma trama anterior, responde las siguientes preguntas:
  • 4.1: ¿Cuál es la dirección física de la máquina que recibe la trama?
    • Sol: c2:84:5a:5a:13:55
  • 4.2: ¿Cuá es la dirección física de la máquina que envía la trama?
    • Sol: 3e:ec:48:f5:60:02
  • 4.3: ¿Cuál es el valor del campo Type de esta trama ethernet?
    • Sol: 0x8000
  1. Analiza todas las tramas y escribe todos los protocolos diferentes que veas que se
    están usando, y clasifícalos segun niveles según la arquitectura TCP/IP
  • Sol:
    • Nivel físico: A nivel físico todas las tramas son Ethernet II
    • Nivel de internet: ARP, ICMP, IP,
    • Transporte: UDP, TCP
    • Aplicación: HTTP
  1. Analiza la trama número 32.
  • 6.1: ¿Cuántos dato útiles (bytes) se transportan en el protocolo
    de último nivel?
    • Sol: 5
  • 6.2: ¿Qué mensaje se está enviando?
    • Sol: hola\n

Parte II: Direcciones IP

  1. Arranca Netgui y construye esta subred formada por 3 PC.

IMPORTANTE:
El nombre de los PCs debe debe terminar con un guión seguido de tus iniciales.
Así, un estudiante que se llame Antonio González Márquez deberá añadir el sufijo -agm
a los nombres de los PCs:

Toma un pantallazo del escenario y adjúntalo como respuesta a esta pregunta

  1. Configura las direcciones IP de las tres máquinas para que pertecezcan a la
    misma subred

IMPORTANTE: El primer byte de todas las IP debe estar formado
por los dos primeros dígitos de tu DNI, y el segundo byte por los dos siguientes. El resto
de bytes y la máscara de subred puede ser las que tú elijas, pero compatibles con que los ordenadores pertenezcan a la misma subred. Por ejemplo, si el DNI de Antonio González Márquez es
12345678W, las direcciones IP debe ser de la forma 12.34.x.x

Rellena esta tabla con la información, y configura los pcs para que tengan esas direcciones IP

Nombre PC Dirección IP
pc1-xxx
pc2-xxx
pc3-xxx
  • Sol: (Para el caso del estudiante ficticio Antonio González Márquez, con DNI 12345678W)
Nombre PC Dirección IP
pc1-agm 12.34.0.1
pc2-agm 12.34.0.2
pc3-agm 12.34.0.3
  1. Completa esta tabla indicando los comandos que has empleado para configurar cada máquina
PC Comando
pc1-xxx
pc2-xxx
pc3-xxx
  • Sol: (Para el caso del estudiante ficticio Antonio González Márquez, con DNI 12345678W)
PC Comando
pc1-agm ifconfig eth0 12.34.0.1 netmask 255.255.255.0
pc2-agm ifconfig eth0 12.34.0.2 netmask 255.255.255.0
pc3-agm ifconfig eth0 12.34.0.3 netmask 255.255.255.0
  1. Comprobación de las direcciones IP: Deberás usar el comando necesario para que
    aparezca en el terminal la informaión de la configuracińo de cada PC. Adjunta
    un pantallazo de cada terminal, con esa información. Para el ejemplo de nuestro
    estudiante Antonio González Márquez, la información de configuración del PC1 sería así:

(Se ha eliminado la información importante)

  • Sol: Para obtener la información pedida hay que ejecutar el comando ifconfig en cada uno de los terminales de las máquinas
  1. Comprueba efectivamente que hay conectividad entre la máquina PC1 y PC2
  • ¿Qué comando usas para ello?

    • Sol: ping
  • Crea un pantallazo de la terminal mostrando que efectivamente hay conectividad

    • Sol: Hay que situarse en cualquier de las dos máquinas (PC1 ó PC2), ejecutar ping pasando como argumento la dirección ip destino y tomar un pantallazo
  1. Sitúate en PC3 e inicia la captura el tráfico que hay en la red. El resultado se almacenará en un fichero llamado captura1-xxx.cap donde xxx es el sufijo que has usado anteriormente con tus
    iniciales. Escribe el comando completo que has usado para realizar la captura:
  • Sol: tcpdump -i eth0 -s 0 -w /hosthome/captura1-agm.cap
  1. Desde PC1 usa el comando ping contra PC2, para que le envíe 3 mensajes, y termina la captura del tráfico. Muestra un pantallazo del terminal de PC1 con los resultados del comando ping
  • Sol: Para enviar sólo 3 mensajes de ping usamos el comando ping con el argumento -c 3. Hay que situarse sobre PC1, ejecutar el comando ping ip-pc2 -c 3 y tomar el pantallazo
  1. Abre con wireshark la captura que has realizado y saca un pantallazo donde se vean claramente
    todos los paquetes que han circulado por la subred

Parte III: Enrutamiento

  1. Arranca Netgui y crea un escenario como el que se muestra en esta imagen, usando la nomenclatura definida en la parte anterior: añade a cada PC un sufijo con tus iniciales, y lo mismo para los rúters. En el caso de nuestro estudiante Antonio González Márquez, el escenario quedaría así:

IMPORTANTE: Respeta la numeración tanto en los PCs como en los Rúters (en indiferenet en los hubs)

Obtén un pantallazo de tu escenario

  1. ¿Cuantas subredes hay en este escenario?
  • Sol: 6
  1. Crea una tabla las direcciones IP de las subredes y sus máscaras. Define las que tu quieras, PERO
    deben cumplir con la misma restricción que en la parte II: debes usar los 4 primeros dígitos de tu DNI para los 2 primeros bytes de las IP. Así, para el caso del estudiante Antonio González Márquez, todas las IP comienzan por 12.34.x.x
Dirección de subred Máscara de subred
... ...
.... .....
  • Sol: (Para el caso del estudiante ficticio Antonio González Márquez, con DNI 12345678W)
Dirección de subred Máscara de subred
12.34.1.0 255.255.255.0
12.34.2.0 255.255.255.0
12.34.3.0 255.255.255.0
12.34.4.0 255.255.255.0
12.34.5.0 255.255.255.0
12.34.6.0 255.255.255.0
  1. Asigna a todas las interfaces de los PCs y los rúters una dirección IP. Escríbelo en la siguiente tabla:
Nombre máquina IP Interfaz
pc1-xxx eth0
pc2-xxx eth0
pc3-xxx eth0
pc4-xxx eth0
pc5-xxx eth0
pc6-xxx eth0
r1-xxx eth0
r1-xxx eth1
r2-xxx eth0
r2-xxx eth1
r2-xxx eth2
r3-xxx eth0
r3-xxx eth1
r4-xxx eth0
r4-xxx eth1
r4-xxx eth2
  • Sol: (Para el caso del estudiante ficticio Antonio González Márquez, con DNI 12345678W)
Nombre máquina IP Interfaz
pc1-agm 12.34.2.1 eth0
pc2-agm 12.34.2.2 eth0
pc3-agm 12.34.1.3 eth0
pc4-agm 12.34.4.4 eth0
pc5-agm 12.34.6.5 eth0
pc6-agm 12.34.5.6 eth0
r1-agm 12.34.1.11 eth0
r1-agm 12.34.2.11 eth1
r2-agm 12.34.1.12 eth0
r2-agm 12.34.3.12 eth1
r2-agm 12.34.4.12 eth2
r3-agm 12.34.2.13 eth0
r3-agm 12.34.3.13 eth1
r4-agm 12.34.3.14 eth0
r4-agm 12.34.5.14 eth1
r4-agm 12.34.6.14 eth2
  1. Para configurar las direcciones IP de forma persistente, ¿Qué fichero
    de configuración hay que usar?
  • Sol: /etc/networking/interfaces
  1. ¿Qué comando hay que utilizar para hacer que los cambios sean efectivos?
  • Sol: /etc/init.d/networking restart
  1. Configura de forma persistente las IPs de TODAS las máquinas,
    tanto de los PCs como de los rúters. Escribe para cada máquina el contenido
    del fichero de configuración
    (el indicado en la pregunta 5)
  • Sol: (Para el caso del estudiante ficticio Antonio González Márquez, con DNI 12345678W)
#-- pc1-agm
auto eth0
iface eth0 inet static
    address 12.34.2.1
    netmask 255.255.255.0
#--pc2-agm
auto eth0
iface eth0 inet static
    address 12.34.2.2
    netmask 255.255.255.0
#-- pc3-agm
auto eth0
iface eth0 inet static
    address 12.34.1.3
    netmask 255.255.255.0
#-- pc4-agm
auto eth0
iface eth0 inet static
    address 12.34.4.4
    netmask 255.255.255.0
#-- pc5-agm
auto eth0
iface eth0 inet static
    address 12.34.6.5
    netmask 255.255.255.0
#-- pc6-agm
auto eth0
iface eth0 inet static
    address 12.34.5.6
    netmask 255.255.255.0
#-- r1-agm
auto eth0 
iface eth0 inet static
  address 12.34.1.11
  netmask 255.255.255.0

auto eth1
iface eth1 inet static
  address 12.34.2.11  
  netmask 255.255.255.0
#-- r2-agm
auto eth0
iface eth0 inet static
    address 12.34.1.12
    netmask 255.255.255.0

auto eth1
iface eth1 inet static
    address 12.34.3.12
    netmask 255.255.255.0

auto eth2
iface eth2 inet static
    address 12.34.4.12
    netmask 255.255.255.0
#-- r3-agm
auto eth0
iface eth0 inet static
  address 12.34.2.13
  netmask 255.255.255.0

auto eth1
iface eth1 inet static
    address 12.34.3.13
    netmask 255.255.255.0
#-- r4-agm
auto eth0
iface eth0 inet static
    address 12.34.3.14
    netmask 255.255.255.0

auto eth1
iface eth1 inet static
    address 12.34.6.14
    netmask 255.255.255.0

auto eth2
iface eth2 inet static
    address 12.34.5.14
    netmask 255.255.255.0
  1. Una vez configuradas sólo las direcciones IP (todavía no están las tablas de enrutamiento), contesta a las siguientes preguntas:
  • 8.1: ¿Existe conectividad entre pc1 y pc2?
    • si
  • 8.2: ¿Existe conectividad entre pc1 y pc6?
    • no
  1. Configura de forma persistente la tabla de enrutamiento de pc1 para que se
    pueda conectar con pc3 y que los paquetes destinados a máquinas de otras subredes
    vayan a través del ruter r3. Escribe el fichero de configuración
  • Sol:
#-- pc1-agm
auto eth0
iface eth0 inet static
    address 12.34.2.1
    netmask 255.255.255.0
    up route add -net 12.34.1.0 netmask 255.255.255.0 gw 12.34.2.11
    gateway 12.34.2.13
  1. Configura de forma persistente la tabla de enrutamiento de pc3 para que exista
    conectividad con pc1. Escribe el fichero de configuración
  • Sol:
#-- pc3-agm
auto eth0
iface eth0 inet static
    address 12.34.1.3
    netmask 255.255.255.0
    gateway 12.34.1.11
  1. Configura las tablas de encaminamiento necesarias para que haya conectividad entre
    pc1 y pc6. Los paquetes de pc1 a pc6 deben seguir la ruta pc1 -> r1 -> r2 -> r4 -> p6 Y los paquetes de pc6 a pc1 deben seguir esta otra: pc6 -> r4 -> r3 -> pc1. Escribe los ficheros de
    configuración de las máquinas que hayas modificado para lograrlo
  • Sol:
#-- pc1-agm
auto eth0
iface eth0 inet static
    address 12.34.2.1
    netmask 255.255.255.0
    up route add -net 12.34.1.0 netmask 255.255.255.0 gw 12.34.2.11
    up route add -net 12.34.5.0 netmask 255.255.255.0 gw 12.34.2.11
    gateway 12.34.2.13
#-- r1-agm
auto eth0 
iface eth0 inet static
  address 12.34.1.11
  netmask 255.255.255.0
  gateway 12.34.1.12

auto eth1
iface eth1 inet static
  address 12.34.2.11  
  netmask 255.255.255.0
#-- r2-agm
auto eth0
iface eth0 inet static
    address 12.34.1.12
    netmask 255.255.255.0

auto eth1
iface eth1 inet static
    address 12.34.3.12
    netmask 255.255.255.0
    gateway 12.34.3.14

auto eth2
iface eth2 inet static
    address 12.34.4.12
    netmask 255.255.255.0
#-- r4-agm
auto eth0
iface eth0 inet static
    address 12.34.3.14
    netmask 255.255.255.0
    gateway 12.34.3.13

auto eth1
iface eth1 inet static
    address 12.34.6.14
    netmask 255.255.255.0

auto eth2
iface eth2 inet static
    address 12.34.5.14
    netmask 255.255.255.0
  1. Ejecuta el comando traceroute en pc1 con destino pc6. Toma un pantallazo del resultado
  • Sol:
pc1-agm:~# traceroute 12.34.5.6
traceroute to 12.34.5.6 (12.34.5.6), 64 hops max, 40 byte packets
 1  12.34.2.11 (12.34.2.11)  10 ms  0 ms  0 ms
 2  12.34.3.12 (12.34.3.12)  23 ms  0 ms  0 ms
 3  12.34.3.14 (12.34.3.14)  0 ms  0 ms  0 ms
 4  12.34.5.6 (12.34.5.6)  9 ms  0 ms  0 ms
pc1-agm:~#
  1. Ejecuta el comando traceroute en pc6 con destino pc1. Toma un pantallazo del resultado
  • Sol:
pc6-agm:~# traceroute 12.34.2.1
traceroute to 12.34.2.1 (12.34.2.1), 64 hops max, 40 byte packets
 1  12.34.5.14 (12.34.5.14)  7 ms  0 ms  0 ms
 2  * * *
 3  12.34.2.1 (12.34.2.1)  41 ms  1 ms  0 ms
pc6-agm:~#
  1. Al ejecutar el traceroute anterior, ¿Se obtienen las IPs de los dos ruters intermdios?
    En caso de que no sea así, ¿Qué modificación debes realizar para que sí aparezcan?
  • Sol: No se obtiene la ip de r3, ya que no está configurada su tabla de enrutamiento para comunicarse con pc6. Se debe configurar así:
#-- r3-agm
auto eth0
iface eth0 inet static
  address 12.34.2.13
  netmask 255.255.255.0

auto eth1
iface eth1 inet static
    address 12.34.3.13
    netmask 255.255.255.0
    gateway 12.34.3.14
  1. Lanza una captura de tráfico desde r2(eth1) en el fichero captura2-xxx.cap donde xxx es el sufijo con tus iniciales. Ejecuta el comando traceroute desde pc1 a pc6. Abre la captura con
    wireshark y responde a las siguientes preguntas:
  • 15.1: ¿Cuantos paquetes se han capturado?

    • Sol: 18 (Sin contar los ARP)
  • 15.2: Indica cuál es el TTL de cada uno de ellos

    • Sol: 3 con TTL=2, 3 con TTL=1, y el resto con TTL >=63

Recursos

https://github.com/Obijuan/URJC-Gsyc-2018-Arquitectura-Internet/wiki/Practica-1:-Ethernet