Práctica 0 Arquitectura de Redes I
Práctica 0 Arquitectura de Redes I
Práctica 0 Arquitectura de Redes I
ARQUITECTURA DE REDES I
Contenidos de la práctica:
0.1. INTRODUCCIÓN A LINUX
0.2. INTRODUCCIÓN A WIRESHARK
0.3. REPASO DE PROGRAMACIÓN
Comando “man”
Captura de pantalla:
Comando “ls”
• ¿Qué se muestra al ejecutar el comando "ls -lah" en un directorio?
1
El comando “ls” nos proporciona información acerca de los archivos o carpetas
existentes en el directorio en el que nos encontremos. En mi caso lo he realizado
desde el directorio principal de mi usuario: /home/natalia.
Al poner la etiqueta “-lah” lo que ocurre es que nos proporciona la información de
estos archivos y carpetas además de datos extra sobre el tamaño en K y la fecha de
última modificación del archivo/carpeta.
Captura de pantalla:
Comando “cat”
• ¿Qué ocurre al ejecutar el comando "cat -n" sobre un archivo?
Al pulsar el anterior comando con la etiqueta “-n” se nos muestra el contenido del
fichero pero con las líneas de texto numeradas.
Captura de pantalla:
2
Comando “grep”
Para encontrar los “#include” que hay en un archivo .h hay que utilizar el siguiente
comando: grep #include fichero.h
Para saber en que línea se encuentra cada uno simplemente hay que añadir la
etiqueta “-n” al comando. A continuación dejo un ejemplo del fichero.txt en el que
se nos indica que ‘17’ se encuentra en la línea de texto 4.
3
Compilador gcc
• ¿Qué banderas son necesarias a la hora de hacer uso de librerías externas (no incluidas
por defecto en Linux) a la hora de realizar la compilación con gcc?
Editores y Makefile
Valgrind
Dado el código ejercicio8.c, use el programa valgrind para detectar en qué línea se produce un
acceso a memoria no permitido.
Según la información que nos proporciona Valgrind el error al acceder a la memoria aparece
al inicializar “calloc” para reservar memoria de 2 variables. Por tanto, la línea de código en la
que se encuentra dicho acceso no permitido es en la 12 y 13 del archivo .c
4
Dado el código ejercicio9.c, use el programa valgrind para detectar en qué línea o líneas existe
memoria sin liberar. ¿Cúanta memoria queda sin liberar?
Según lo que podemos apreciar en la información que obtenemos de Valgrind han quedado
sin liberar 1450 bytes. Esta memoria tal cual como nos indica Valgrind se ha perdido.
5
0.2. INTRODUCCIÓN A WIRESHARK
1. Durante la realización de las prácticas, será muy común disponer de una consola
donde ejecutaremos comandos que mandan y reciben tramas por un interfaz de red. En
paralelo tendremos en ejecución a Wireshark, que estará capturando el tráfico que nos
interese. Este ejercicio muestra un ejemplo típico a realizar en prácticas posteriores:
1. Abra una consola o shell, y déjela abierta en espera de ejecutar algún comando.
2. Ejecute Wireshark y seleccione y configure el interfaz por el que se capturará el
tráfico (habitualmente será eth0) Acuérdese de seleccionar las opciones de
visualización que más le convenga.
3. Inicie la captura de tráfico pulsando en el botón 'Start'.
4. Vuelva a la consola y ejecute el siguiente comando (tecléelo y pulse ): $ sudo
hping3 -S -p 80 www.uam.es
5. Detenga la captura de tráfico mediante el botón 'Stop'.
6. Analice el tráfico capturado (aunque no lo entienda en detalle)
7. Guarde la traza en un fichero (Importante: no utilizar el formato pcap-ng).
8. Cierre Wireshark, y vuelva a abrirlo.
9. Abra el fichero almacenado y compruebe que se almacenó correctamente.
10.Utilizando las columnas que se han añadido durante el tutorial, ordene con
respecto al campo 'PO' en sentido descendente y contabilice el número de paquetes
en el que este campo tiene valor 53.
Discuta los problemas que haya encontrado durante la realización del ejercicio.
6
2. Tras haber leído las documentación online facilitada, empiece a capturar tráfico. Abra un
navegador y visualice un vídeo en youtube. Pare la captura, y añada un filtro en el interfaz de
modo que solo se visualicen paquetes que sean de tipo IP y que tengan un tamaño de paquete
mayor a 1000 Bytes.
Capturas de pantalla:
7
Cap.2 → Captura de tráfico filtrada
8
1. Copie el filtro realizado.
Para almacenar una captura filtrada he seguido los siguientes pasos: file >
save as > nombre, formato y lugar de almacenamiento.
Captura de pantalla del proceso:
3. Compare el tamaño del primer paquete IP, y el campo 'length' del protolo IP del
mismo. Repita para los primeros 5 paquetes, ¿qué relación encuentra?
9
3. Añada una columna custom que muestre el tiempo entre paquetes consecutivos. Explique
brevemente que menús y opciones ha seleccionado.
Para crear en primer lugar una columna he seguido los siguientes pasos:
Edit < preferences < columns < seleccionar nombre “custom” y tipo de columna “time format
as specified”.
Para que se muestre el tiempo entre paquetes he seguido los siguientes pasos:
View < time display format < seconds since previous captured packet
10
Captura de pantalla de aplicación de filtro de visualización:
Para modificar el tiempo a un formato Unix (desde 1970) he seguido los siguientes
pasos:
View < time display format < seleccionar “Seconds Since Epoch (1970-01-01)” y
“seconds".
Captura de pantalla:
11
Para modificar el tiempo a formato humano seguimos los siguientes pasos:
View < time display format < seleccionar “Date and time of day” y “Automatic”.
Captura de pantalla:
12
5. Inicie una captura en Wireshark pero aplicando filtros de captura, en concreto solo
queremos capturar tráfico UDP. Mientras captura tráfico visualice brevemente un vídeo en
youtube, ejecute en una consola el comando $ sudo hping3 -S -p 80 www.uam.es.
Compruebe que solo se capturan paquetes UDP, y describa brevemente los pasos realizados
Al hacer la captura aparecen paquetes en los cuáles he comprobado que solo son UDP
fijándome en la parte inferior del programa donde se especifican las características de
cada paquete y concretamente en el apartado de “Internet Protocol”.
Para hacer una captura con los filtros, en primer lugar he pulsado en el segundo icono
que aparece en la parte superior: “Capture options”. Una vez ahí he seleccionado el
filtro de udp(only) como se puede apreciar en la captura.
13
Captura de comprobación que son paquetes UDP:
14