Acest articol acoperă utilizarea comenzii ss cu câteva exemple simple. Toate comenzile afișate în acest articol au fost executate pe Ubuntu 20.04 distribuție pentru a verifica statisticile conexiunilor de socket și de rețea.
Exemplul 1: Listează conexiunea la rețea utilizând comanda ss
Puteți lista cu ușurință toate conexiunile de rețea prezente într-un sistem, inclusiv conexiunile socket TCP, UDP și UNIX, folosind următoarea comandă ss. Ieșirea este afișată în format „mai puțin”, astfel încât să puteți derula prin fereastra de ieșire:
$ ss | Mai puțin
Exemplul 2: enumerați conexiunile TCP, UDP și Unix Socket
De asemenea, puteți filtra conexiunile de socket TCP, UDP și UNIX folosind următoarele opțiuni:
Folosind doar opțiunea „t” se afișează conexiunile „Conectate” sau „Stabilite”.„Această opțiune singură nu vă arată conexiunile TCP socket care sunt„ Ascultare.'
$ ss -t
Pentru TCP, utilizați opțiunea „-t”, împreună cu eticheta „-A”.
$ ss -A tcp
Pentru conexiunile UDP, utilizați următoarea comandă:
$ ss -ua$ ss -a -A udp
Opțiunea „a” afișează atât socket-urile „Conectate”, cât și cele „Ascultare”. UDP este un protocol fără conexiune, deci folosind singur „ss -u” nu se va afișa nimic. Cu toate acestea, „a” poate fi folosit pentru a afișa toate conexiunile UDP.
Pentru conexiunile socket Unix, utilizați următoarea comandă:
$ ss x
Exemplul 3: Afișare ieșire mai rapidă
Opțiunea „n” utilizată cu „t” împiedică statisticile socketului să rezolve adresele IP către numele gazdei și afișează ieșirea mai rapidă, după cum urmează:
$ ss -nt
Exemplul 4: Afișați numai soclurile de ascultare
De asemenea, puteți afișa numai conexiunile de socket TCP care ascultă. Opțiunea „n” ignoră rezolvarea numelor de gazdă ale adresei IP pentru a afișa rezultatul mai rapid.
$ ss -ltn
Pentru toate conexiunile de ascultare UDP, înlocuiți opțiunea „t” cu opțiunea „u”, după cum urmează:
$ ss -lun
Exemplul 5: Afișați numele procesului cu pid
Puteți afișa numele procesului, împreună cu pid-ul fiecărui proces, utilizând următoarea comandă ss cu opțiunea „-ltp”:
$ sudo ss -ltp
Exemplul 6: Afișați statistici
Utilizarea opțiunii „s” cu comanda ss afișează statisticile complete, după cum urmează:
$ ss -s
Exemplul 7: Afișați detaliile temporizatorului de conexiune
Utilizând opțiunea „-o” cu comanda ss, puteți afișa informațiile de timp ale fiecărei conexiuni. Detaliile de timp informează utilizatorul cât timp s-a menținut această conexiune:
$ ss -tn -o
Exemplul 8: Imprimați conexiunea de soclu IPV6 sau IPV4
Pentru a imprima numai conexiunile IPv4 socket, utilizați opțiunea „-4” cu „-f inet”, după cum urmează:
$ ss -tl4$ ss -tl -f inet
Pentru IPV6, utilizați opțiunea „-6” sau „-f inet”.'
$ ss -tl6
Exemplul 9: Filtrează conexiunile TCP după stat
De asemenea, puteți filtra conexiunile după starea conexiunii cu comanda ss. Conexiunile pot exista în diferite stări, cum ar fi stabilit, syn-recv, syn-sent, fin-wait-1, fin-wait-2, time-wait, close-wait, închis, all, last-ack, închidere, conectat , cupă, sincronizată și cupă.
Deci, conform cerințelor utilizatorului, puteți utiliza și filtra orice stare de conexiune executând următoarea comandă:
$ ss [OPTIONS] state [State-name]$ ss -t4 stat stabilit
În exemplul de mai sus, am filtrat toate conexiunile socket „stabilite” ale TCP.
$ ss -t4 state time-wait$ ss -t4 stat conectat
Exemplul 10: Adresa filtrului după numărul portului
De asemenea, puteți filtra conexiunea după numărul portului sau după o adresă IP specificată, după cum urmează:
$ ss -nt dst 127.0.0.1: 45807$ sudo ss -ntlp sport gt: 5000
Concluzie
Acest articol a explorat diferitele utilizări ale comenzii ss. Comanda ss este cea mai bună alternativă pentru comanda netstat, așa cum ați văzut în acest tutorial. Folosind exemplele de mai sus, puteți monitoriza cu ușurință prizele de sistem și conexiunile de rețea.