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

  1. Cambiar al modo de s煤per usuario
    sudo -i

    Este comando nos permite ejecutar las siguientes operaciones con privilegios administrativos.

  2. Actualizar paquetes del sistema
    apt update && apt upgrade -y

    Actualizamos la lista de paquetes y sus versiones para tener el sistema al d铆a.

  3. Instalar Python3
    apt install -y python3 python3-pip

    Instalamos Python3 y pip para poder ejecutar nuestras aplicaciones.

  4. Instalar Git
    apt install -y git

    Necesario para clonar el repositorio con el c贸digo del proyecto.

  5. 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.

  6. Obtener la direcci贸n IP del servidor
    ip addr show

    Necesitamos conocer la IP para que los clientes puedan conectarse al servidor.

    Uploaded Image

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

Uploaded Image

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:

  1. Instalar dependencias
    sudo apt update
    sudo apt install -y python3 python3-pip git python3-tk

    Incluimos python3-tk (Tkinter) para la interfaz gr谩fica.

  2. 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]

Uploaded Image

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

Uploaded Image

Desde Zorin OS (el servidor) deber铆an aparecer las conexiones realizadas, en este caso dos conexiones de la misma IP de Ubuntu.

Uploaded Image

Configuraci贸n en Windows

Tambi茅n puedes enviar solicitudes desde Windows siguiendo los mismos pasos:

Uploaded Image

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

  1. Iniciar Wireshark

    Abre Wireshark desde el men煤 de aplicaciones o ejecutando wireshark en terminal.

  2. Configurar la captura

    Selecciona la interfaz de red apropiada (generalmente eth0 o la interfaz conectada a la red).

  3. Iniciar captura antes de las pruebas
    Es crucial iniciar la captura ANTES de realizar las solicitudes desde los clientes.
  4. Realizar las pruebas

    Ejecuta las conexiones desde los diferentes clientes (Ubuntu, Windows) tanto por consola como por interfaz gr谩fica.

  5. 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:

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.

Uploaded Image