Rețele

Trimiteți și primiți pachete UDP prin Linux CLI

Trimiteți și primiți pachete UDP prin Linux CLI
Știm deja despre două protocoale principale de strat de transport precum TCP și UDP. Pentru mai multe informații despre TCP și UDP, puteți verifica secțiunea de referință. În acest articol, vom învăța cum să trimitem și să primim pachete UDP prin interfața liniei de comandă Linux (CLI) folosind nc (în principal) comandă.

Așteptări:

Iată punctele cheie de învățat din acest articol

  1. A întelege nc comandă în Linux.
  2. Utilizare nc comandă pentru trimiterea și primirea pachetelor UDP prin rețea.
  3. Trimiteți câteva propoziții citibile de către oameni nc comanda.
  4. Capturați pachetul UDP trimis de nc comanda.
  5. Verificați pachetul de rețea în Wireshark.
  6. Aflați orice altă comandă în afară de netcat pentru Linux.

Comanda Netcat:

Comanda Netcat (nc) este instalată implicit în sistemul de operare Linux. Deschideți un terminal [Comandă rapidă Alt + Ctrl + t] și utilizați comanda de mai jos pentru a verifica dacă nc este prezent sau nu.

$ nc

Iată rezultatul scontat

Acesta este nc din pachetul netcat-openbsd. Este disponibil un nc alternativ
în pachetul netcat-traditional.
utilizare: nc [-46bCDdhjklnrStUuvZz] [-I lungime] [-i interval] [-O lungime]
[-P nume_utilizator proxy] [-p sursă_port] [-q secunde] [-s sursă]
[-T toskeyword] [-V rtable] [-w timeout] [-X proxy_protocol]
[-x adresa proxy [: port]] [destinație] [port]

Aceasta înseamnă că comanda nc există deja în Linux.

Diagrama generală de configurare:

Trimiteți pachetul UDP:

Să luăm un exemplu de genul că vom trimite pachetul UDP de la Sistemul A la Sistemul B. Deci, în conceptul server-client, trebuie să rulăm serverul din partea sistemului B și clientul din partea sistemului A.

De asemenea, avem adrese IP valide.

IP al sistemului: 192.168.1.6
Sistem B IP: 192.168.1.102

Porniți serverul:

Pentru a începe să utilizați comanda nc utilizați comanda de mai jos în terminalul System B

$ nc -u -l 9999

Iată captura de ecran

Această comandă nu are nicio ieșire de afișat de acum. Acesta este doar modul de ascultare pe portul 9999.

Start Client:

Pentru a vă conecta la server utilizând comanda nc, utilizați comanda de mai jos în terminalul System A

$ nc -u 192.168.1.102 9999

Acum sistemul A trebuie să se conecteze la sistemul B. Deci, am furnizat adresa IP a serverului și numărul portului.

Iată captura de ecran

Verificați conexiunea:

Putem verifica comanda de mai jos pentru confirmarea legăturii clientului cu portul serverului.

$ netstat | grep 9999

Iată captura de ecran

Trimiteți pachete UDP:

Acum putem trimite pachetul udp din Sistemul A în B și invers.

Pasul 1:

Acum mergeți la sistemul A și trimiteți orice propoziții de genul

„Bună, sunt din LinuxHint [System A 192.168.1.6] ”

Captură de ecran:

Pasul 2:

Ar trebui să putem vedea acest lucru în partea B a sistemului. Iată captura de ecran

De asemenea, putem trimite pachete UDP de la Sistemul B la Sistemul A.

Pasul 1:

Accesați Sistemul B și trimiteți propoziții de genul

"Bună, sunt din LinuxHint [Sistemul B 192.168.1.102] "

Iată captura de ecran din Sistemul B

Pasul 2:

Iată captura de ecran din Sistemul A

Verificați pachetele în Wireshark:

Acum, în timp ce trimitem pachete UDP de la Sistemul A la Sistemul B și viceversa, putem începe Wireshark fie în Sistemul A, fie în Sistemul B. Aici avem fișierul de captură, să facem câteva analize și să confirmăm dacă acest server și comunicarea client au folosit protocolul UDP.

Rețineți că vom analiza doar prima comunicare:

Sistemul A a trimis:

„Bună, sunt din LinuxHint [System A 192.168.1.6] ”

La:

Sistemul B [192.168.1.102].

Vom folosi filtrul „Udp.port == 9999 ” pentru a obține numai pachete conexe în Wireshark. Consultați mai jos captura de ecran pentru analiza de la captura Wireshark:

Pentru a ști cum să utilizați Wireshark, consultați linkul de mai jos

https: // linuxhint.com / wireshark_basics_how_to_use_use /

Altă comandă pentru a trimite pachete UDP:

Există o altă metodă pentru a trimite pachete UDP

Rulați serverul la sistemul B:

$ nc -u -l 8000

Rulați comanda de mai jos la sistemul A:

$ echo -n "salut"> / dev / udp / 192.168.1.102/8000
192.168.1.102: IP-ul sistemului B
8000: Portul serverului
Mesaj trimis: „salut”

Dar putem trimite o singură dată „salut”. Dacă ucidem serverul și reluăm, atunci funcționează.

Concluzie:

Din exercițiul de mai sus am învățat mecanismul pentru a trimite unele mesaje folosind protocolul UDP. Și cea mai bună metodă este de a utiliza nc comandă în Linux.

Referințe:

Pentru a înțelege TCP: https: // linuxhint.com / tcp_packet_capture_analysis /
Pentru a înțelege UDP: https: // linuxhint.com / udp_wireshark_analysis /

Cum să vă găsiți adresa IP în Linux?
O adresă IP este o adresă de rețea a dispozitivului dvs. atunci când se conectează la internet sau la rețeaua locală. Pe internet, adresele IP sunt al...
How to Setup, Modify, and Delete Linux Network Bridges and Bonds
In this guide, we will discuss two essential networking concepts that are bridging and bonding. We will see how to set up, modify, and delete the brid...
Schimbarea schimbătorului de adrese MAC
Acest articol va discuta despre cum puteți schimba adresa MAC a sistemului dvs. În primul rând, vom oferi o scurtă definiție a adresei MAC. Apoi, vom ...