Trabajo Pr谩ctico TCP IMC remoto
Presentado por:
Jeison Alexis Rodr铆guez AngaritaCC 1005236073
Daniel Eduardo D谩vila QuinteroCC 1092730371
Presentado a:
Luz Marina Santos Jaimes
Asignatura:
Redes, Grupo B
Pamplona, Norte de Santander
25 de octubre del 2025
1. Instalaci贸n de Paquetes y Configuraci贸n del Servidor
En esta secci贸n configuraremos el servidor remoto que realizar谩 las
operaciones para calcular el 脥ndice de Masa Corporal (IMC). El servidor
estar谩 ejecut谩ndose en Zorin OS y ser谩 accesible desde m煤ltiples
clientes.
Configuraci贸n Inicial del Servidor
-
Cambiar al modo de s煤per usuario
sudo -i
Este comando nos permite ejecutar las siguientes operaciones con
privilegios administrativos.
-
Actualizar paquetes del sistema
apt update && apt upgrade -y
Actualizamos la lista de paquetes y sus versiones para tener el
sistema al d铆a.
-
Instalar Python3
apt install -y python3 python3-pip
Instalamos Python3 y pip para poder ejecutar nuestras aplicaciones.
-
Instalar Git
apt install -y git
Necesario para clonar el repositorio con el c贸digo del proyecto.
-
Clonar el repositorio del proyecto
git clone
https://github.com/JeisonAlexis/CalculadoraRemota-PracticaRedes.git
Descargamos el c贸digo fuente de la calculadora de IMC remota.
-
Obtener la direcci贸n IP del servidor
ip addr show
Necesitamos conocer la IP para que los clientes puedan conectarse al
servidor.
Configuraci贸n del Firewall y Puertos
Para permitir las conexiones TCP en el puerto espec铆fico del servicio,
configuramos el firewall:
sudo apt install -y ufw
sudo ufw allow 22/tcp
sudo ufw allow 9999/tcp
sudo ufw enable
sudo ufw status verbose
Para simplificar la pr谩ctica, se recomienda desactivar el firewall
completamente:
sudo ufw disable
Ejecuci贸n del Servidor
Ejecuta el servidor para que est茅 escuchando las solicitudes. Recuerda
que no puedes cerrar esta terminal mientras el servidor est茅 en
funcionamiento.
cd CalculadoraRemota-PracticaRedes
python3 servidor.py
2. Configuraci贸n del Cliente
En esta secci贸n configuraremos los clientes que se conectar谩n al
servidor para solicitar c谩lculos de IMC. Los clientes pueden ejecutarse
desde diferentes sistemas operativos.
Configuraci贸n en Ubuntu (Cliente)
Desde un sistema Ubuntu, realizamos la misma instalaci贸n b谩sica que en
el servidor:
-
Instalar dependencias
sudo apt update
sudo apt install -y python3 python3-pip git
python3-tk
Incluimos python3-tk (Tkinter) para la interfaz gr谩fica.
-
Clonar el repositorio
git clone
https://github.com/JeisonAlexis/CalculadoraRemota-PracticaRedes.git
cd
CalculadoraRemota-PracticaRedes
Ejecuci贸n desde L铆nea de Comandos
Para enviar datos al servidor desde la consola, ejecuta el siguiente
comando. Aseg煤rate de estar en la ruta del repositorio y de configurar
la IP correspondiente de tu servidor:
python3 cliente_consola.py [IP_DEL_SERVIDOR]
Ejecuci贸n con Interfaz Gr谩fica
Para usar la interfaz gr谩fica, primero debes modificar el archivo
cliente_gui.py y cambiar la variable
SERVER_HOST por la IP de tu servidor:
python3 cliente_gui.py
Desde Zorin OS (el servidor) deber铆an aparecer las conexiones
realizadas, en este caso dos conexiones de la misma IP de Ubuntu.
Configuraci贸n en Windows
Tambi茅n puedes enviar solicitudes desde Windows siguiendo los mismos
pasos:
- Instalar Python3 desde python.org
- Instalar Git desde git-scm.com
- Clonar el repositorio usando Git Bash o Command Prompt
- Ejecutar los scripts de cliente como se describi贸 anteriormente
3. Captura de Tr谩fico con Wireshark
Para analizar el tr谩fico de red generado durante la comunicaci贸n TCP
entre cliente y servidor, utilizaremos Wireshark en el servidor.
Instalaci贸n de Wireshark
En Zorin OS (el servidor), instala Wireshark:
sudo apt update
sudo apt install -y wireshark
Durante la instalaci贸n, acepta configurar Wireshark para usuarios no
privilegiados si se solicita.
Procedimiento de Captura
-
Iniciar Wireshark
Abre Wireshark desde el men煤 de aplicaciones o ejecutando
wireshark en terminal.
-
Configurar la captura
Selecciona la interfaz de red apropiada (generalmente eth0 o la
interfaz conectada a la red).
-
Iniciar captura antes de las pruebas
Es crucial iniciar la captura ANTES de realizar las solicitudes
desde los clientes.
-
Realizar las pruebas
Ejecuta las conexiones desde los diferentes clientes (Ubuntu,
Windows) tanto por consola como por interfaz gr谩fica.
-
Detener la captura y filtrar
Una vez completadas las pruebas, det茅n la captura y aplica el
filtro:
tcp.port == 9999
Este filtro mostrar谩 煤nicamente el tr谩fico TCP en el puerto 9999
utilizado por nuestra aplicaci贸n.
An谩lisis de Resultados
En la captura filtrada podr谩s observar:
-
Establecimiento de conexi贸n TCP: Three-way handshake
(SYN, SYN-ACK, ACK)
-
Intercambio de datos: Env铆o de peso y estatura,
respuesta con c谩lculo de IMC
-
Cierre de conexi贸n: Terminaci贸n ordenada de la sesi贸n
TCP
-
Direcciones IP: Identificaci贸n de clientes Ubuntu y
Windows conect谩ndose al servidor
Guarda la captura de Wireshark para incluir capturas de pantalla en tu
reporte final, mostrando el tr谩fico TCP generado por la aplicaci贸n de
c谩lculo de IMC remoto.