Enviar y recibir paquetes UDP a través de Linux CLI

Enviar y recibir paquetes UDP a través de Linux CLI
Ya sabemos sobre dos protocolos principales de capa de transporte como TCP y UDP. Para obtener más información sobre TCP y UDP, puede verificar la sección de referencia. En este artículo, aprenderemos cómo enviar y recibir paquetes UDP a través de la interfaz de línea de comandos de Linux (CLI) usando Carolina del Norte (principalmente) comando.

Expectativas:

Aquí están los puntos clave para aprender de este artículo

  1. Comprender Carolina del Norte Comando en Linux.
  2. Usar Carolina del Norte Comando para enviar y recibir paquetes UDP a través de la red.
  3. Envíe algunas oraciones legibles por humanos a través de Carolina del Norte dominio.
  4. Capturar el paquete UDP enviado por Carolina del Norte dominio.
  5. Verifique el paquete de red en Wireshark.
  6. Descubra cualquier otro comando que no sea NetCat para Linux.

Comando NetCat:

El comando NetCat (NC) se instala de forma predeterminada en Linux OS. Abra un terminal [Att+Ctrl+T] y use el siguiente comando para verificar si NC está presente o no.

$ NC

Aquí está el resultado esperado

Este es NC del paquete NetCat-OpenBsd. Una alternativa NC está disponible
En el paquete tradicional de NetCat.
Uso: NC [-46bcddhjklnrstuuvzz] [-i longitud] [-i intervalo] [-o longitud]
[-P proxy_username] [-p source_port] [-q segundos] [-s fuente]
[-T toskeyword] [-v rtable] [-w timeout] [-x proxy_protocol]
[-x proxy_address [: puerto]] [destino] [puerto]

Esto significa que el comando nc ya existe en Linux.

Diagrama de configuración general:

Enviar paquete UDP:

Tomemos un ejemplo como enviaremos el paquete UDP del sistema A al sistema B. Entonces, en el concepto de servidor-cliente, tenemos que ejecutar el servidor en el lado del sistema B y el cliente en el sistema un lado.

También tenemos direcciones IP válidas.

Sistema A IP: 192.168.1.6
Sistema B IP: 192.168.1.102

Servidor de inicio:

Para comenzar a ser el consultor de NC, use el comando a continuación en el terminal del sistema B

$ nc -u -l 9999

Aquí está la captura de pantalla

Este comando no tiene ningún resultado que mostrar a partir de ahora. Este es solo el modo de escucha en el puerto 9999.

Iniciar cliente:

Para conectarse al servidor utilizando el comando NC Use el comando a continuación en el sistema un terminal

$ NC -U 192.168.1.102 9999

Ahora el sistema A tiene que conectarse al sistema B. Entonces hemos proporcionado la dirección IP del servidor y el número de puerto.

Aquí está la captura de pantalla

Verifica la conexión:

Podemos verificar el siguiente comando para la confirmación sobre la connación del cliente al puerto del servidor.

$ netstat | Grep 9999

Aquí está la captura de pantalla

Enviar paquetes UDP:

Ahora podemos enviar el paquete UDP del sistema A a B y viceversa.

Paso 1:

Ahora vaya al Sistema A y envíe cualquier oración como

"Hola, soy de Linuxhint [Sistema A 192.168.1.6] "

Captura de pantalla:

Paso 2:

Deberíamos ver esto en el lado del sistema B. Aquí está la captura de pantalla

También podemos enviar paquetes UDP desde el sistema B al sistema A.

Paso 1:

Ir al sistema B y enviar oraciones como

"Hola, soy de Linuxhint [Sistema B 192.168.1.102] "

Aquí está la captura de pantalla del Sistema B

Paso 2:

Aquí está la captura de pantalla del sistema a

Verifique los paquetes en Wireshark:

Ahora, mientras hemos estado enviando paquetes UDP desde el Sistema A al Sistema B y Vice versos, podemos iniciar Wireshark en el Sistema A o el Sistema B. Aquí tenemos el archivo de captura, hagamos algún análisis y confirmemos si este servidor y la comunicación del cliente utilizaron el protocolo UDP.

Tenga en cuenta que solo analizaremos la primera comunicación:

El sistema A ha enviado:

"Hola, soy de Linuxhint [Sistema A 192.168.1.6] "

A:

Sistema B [192.168.1.102].

Usaremos filtro "UDP.puerto == 9999 " Para obtener solo paquetes relacionados en Wireshark. Consulte a continuación la captura de pantalla para el análisis de la captura de Wireshark:

Para saber cómo usar Wireshark, referir el siguiente enlace

https: // linuxhint.com/wireshark_basics_how_to_use/

Otro comando para enviar paquetes UDP:

Hay otro método para enviar paquetes UDP

Ejecutar el servidor en el sistema B:

$ nc -u -l 8000

Ejecute el comando a continuación en el sistema A:

$ echo -n "Hello">/dev/Udp/192.168.1.102/8000
192.168.1.102: IP del Sistema B
8000: el puerto del servidor
Mensaje enviado: "Hola"

Pero somos capaces de enviar solo una vez "hola". Si matamos al servidor y volvemos a hacer, entonces está funcionando.

Conclusión:

Del ejercicio anterior hemos aprendido el mecanismo de enviar algunos mensajes utilizando el protocolo UDP. Y el mejor método es usar Carolina del Norte Comando en Linux.

Referencias:

Para comprender TCP: https: // Linuxhint.com/tcp_packet_capture_analysis/
Para entender UDP: https: // linuxhint.com/udp_wireshark_analysis/