Enviar e receber pacotes UDP via Linux CLI

Enviar e receber pacotes UDP via Linux CLI
Já sabemos sobre dois protocolos principais da camada de transporte, como TCP e UDP. Para obter mais informações sobre TCP e UDP, você pode verificar a seção de referência. Neste artigo, aprenderemos a enviar e receber pacotes UDP através da interface da linha de comando Linux (CLI) usando NC (principalmente) comando.

Expectativas:

Aqui estão os pontos -chave para aprender com este artigo

  1. Para entender NC comando no linux.
  2. Usar NC Comando para enviar e receber pacotes UDP através da rede.
  3. Envie algumas frases legíveis humanas através NC comando.
  4. Capture o pacote UDP enviado por NC comando.
  5. Verifique o pacote de rede no Wireshark.
  6. Descubra qualquer outro comando que não seja o netcat para Linux.

Comando netcat:

O comando NetCat (NC) é instalado por padrão no Linux OS. Abra um terminal [atalho Alt+Ctrl+T] e use o comando abaixo para verificar se a NC está presente ou não.

$ nc

Aqui está a saída esperada

Este é NC do pacote NetCat-OpenBSD. Um NC alternativo está disponível
no pacote NetCat-Tradicional.
Uso: NC [-46bcddhjklnrstuuvzz] [-i comprimento] [-i intervalo] [-o Comprimento]
[-P proxy_username] [-p source_port] [-q segundos] [-s fonte]
[-T toskeyword] [-v rtable] [-w timeout] [-x proxy_protocol]
[-x proxy_address [: porta]] [destino] [Port]

Isso significa que o comando NC já existe no Linux.

Diagrama de configuração geral:

Envie o pacote UDP:

Vamos dar um exemplo como enviaremos o pacote UDP do sistema A para o sistema B. Portanto, no conceito de servidor-cliente, temos que executar o servidor no lado B e cliente no sistema A lado.

Também temos endereços IP válidos.

Sistema A IP: 192.168.1.6
Sistema B IP: 192.168.1.102

Start Server:

Para começar a sever usando o comando NC Use abaixo o comando no sistema B terminal

$ nc -u -l 9999

Aqui está a captura de tela

Este comando não tem nenhuma saída para mostrar a partir de agora. Este é apenas o modo de escuta na porta 9999.

Iniciar o cliente:

Para conectar -se ao servidor usando o comando NC Use abaixo o comando no sistema um terminal

$ nc -u 192.168.1.102 9999

Agora o sistema A tem que se conectar ao sistema B. Então, fornecemos o endereço IP do servidor e o número da porta.

Aqui está a captura de tela

Verifique a conexão:

Podemos verificar o comando abaixo para confirmação sobre a conexão com o cliente à porta do servidor.

$ netstat | Grep 9999

Aqui está a captura de tela

Envie pacotes UDP:

Agora podemos enviar o pacote UDP do sistema A para B e vice -versa.

Passo 1:

Agora vá para o sistema A e envie qualquer frase como

“Oi eu sou de Linuxhint [Sistema A 192.168.1.6] "

Captura de tela:

Passo 2:

Devemos ver isso no lado B. Aqui está a captura de tela

Também podemos enviar pacotes UDP do sistema B para o sistema A.

Passo 1:

Vá para o sistema B e envie a frase como

"Oi eu sou de Linuxhint [Sistema B 192.168.1.102] "

Aqui está a captura de tela do sistema B

Passo 2:

Aqui está a captura de tela do sistema a

Verifique os pacotes no Wireshark:

Agora, enquanto enviamos pacotes UDP do sistema A para o Sistema B e Vice Verso, podemos iniciar o Wireshark no sistema A ou no sistema B. Aqui temos o arquivo de captura, vamos fazer alguma análise e confirmar se essa comunicação do servidor e do cliente usou o protocolo UDP.

Observe que apenas analisaremos a primeira comunicação:

O sistema A enviou:

“Oi eu sou de Linuxhint [Sistema A 192.168.1.6] "

Para:

Sistema B [192.168.1.102].

Vamos usar o filtro “UDP.porta == 9999 " Para obter apenas pacotes relacionados no Wireshark. Consulte a captura de tela abaixo para análise da Wireshark Capture:

Para saber como usar o Wireshark, consulte o link abaixo

https: // linuxhint.com/wireshark_basics_how_to_use/

Outro comando para enviar pacotes UDP:

Há outro método para enviar pacotes UDP

Execute o servidor no sistema B:

$ nc -u -l 8000

Execute o comando abaixo no sistema A:

$ echo -n "hello">/dev/udp/192.168.1.102/8000
192.168.1.102: IP do sistema B
8000: a porta do servidor
Mensagem enviada: “Olá”

Mas somos capazes de enviar apenas uma vez "Olá". Se matarmos o servidor e a execução, então está funcionando.

Conclusão:

Com o exercício acima, aprendemos o mecanismo para enviar algumas mensagens usando o protocolo UDP. E o melhor método é usar NC comando no linux.

Referências:

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