Šiame straipsnyje aptariamas ss komandos naudojimas su keliais paprastais pavyzdžiais. Visos šiame straipsnyje nurodytos komandos buvo vykdomos „Ubuntu 20“.04 paskirstymas, norint patikrinti lizdo ir tinklo ryšių statistiką.
1 pavyzdys: nurodykite tinklo ryšį naudodami komandą ss
Naudodami šią ss komandą galite lengvai išvardyti visus sistemoje esančius tinklo ryšius, įskaitant TCP, UDP ir UNIX lizdo jungtis. Išvestis rodoma „mažiau“ formatu, kad galėtumėte slinkti išvesties lange:
$ ss | mažiau
2 pavyzdys: išvardykite TCP, UDP ir „Unix Socket Connections“
Taip pat galite filtruoti TCP, UDP ir UNIX lizdų jungtis naudodami šias parinktis:
Naudojant tik parinktį „t“, rodomi „prijungti“ arba „užmegzti“ ryšiai.„Ši parinktis nerodo TCP lizdo jungčių, kurios yra„ Klausymas."
$ ss -t
TCP naudokite parinktį „-t“ kartu su žyma „-A“.
$ ss -Tcp
Norėdami naudoti UDP ryšius, naudokite šią komandą:
$ ss -ua$ ss -a -A udp
Parinktyje „a“ rodomi lizdai „Prisijungta“ ir „Klausymas“. UDP yra bevielis protokolas, todėl naudojant „ss -u“ nieko nebus rodoma. Tačiau „a“ gali būti naudojamas rodant visus UDP ryšius.
Norėdami prisijungti prie „Unix“ lizdo, naudokite šią komandą:
$ ss x
3 pavyzdys: rodyti greitesnę išvestį
„N“ parinktis, naudojama kartu su „t“, neleidžia „Socket“ statistikai išspręsti IP adresų į pagrindinius kompiuterius ir rodo spartesnę išvestį taip:
$ ss -nt
4 pavyzdys: rodyti tik klausymo lizdus
Taip pat galite rodyti tik klausomus TCP lizdo ryšius. Parinktis „n“ ignoruoja IP adreso pavadinimų išsprendimą, kad išvestis būtų rodoma greičiau.
$ ss -ltn
Visiems UDP klausymo ryšiams pakeiskite parinktį „t“ į „u“ parinktį taip:
$ ss -lun
5 pavyzdys: rodyti proceso pavadinimą su pid
Galite parodyti proceso pavadinimą kartu su kiekvieno proceso pid, naudodami šią komandą ss su parinktimi '-ltp':
$ sudo ss -ltp
6 pavyzdys: rodyti statistiką
Naudojant parinktį „s“ su komanda ss, pateikiama visa statistika:
$ ss -s
7 pavyzdys: rodyti išsamią ryšio laikmačio informaciją
Naudodami parinktį „-o“ su komanda ss, galite parodyti kiekvieno ryšio laiko informaciją. Išsami laiko informacija vartotojui praneša, kiek laiko palaikomas šis ryšys:
$ ss -tn -o
8 pavyzdys: spausdinkite „IPV6“ arba „IPV4“ lizdo jungtį
Norėdami spausdinti tik „IPv4“ lizdo jungtis, naudokite parinktį „-4“ su „-f inet“ taip:
$ ss -tl4$ ss -tl -f inet
Jei naudojate IPV6, naudokite parinktį „-6“ arba „-f inet“."
$ ss -tl6
9 pavyzdys: filtruokite TCP ryšius pagal būseną
Taip pat galite filtruoti ryšius pagal ryšio būseną naudodami komandą ss. Ryšiai gali būti įvairiose būsenose, pvz., Užmegzti, sin-recv, sin-siunčiami, fin-wait-1, fin-wait-2, time-wait, close-wait, uždaryti, visi, last-ack, uždaromi, prijungti , segmentas, sinchronizuotas ir segmentas.
Taigi, atsižvelgiant į vartotojo reikalavimus, galite naudoti ir filtruoti bet kokią ryšio būseną vykdydami šią komandą:
$ ss [OPTIONS] būsena [valstijos pavadinimas]Įkurta $ ss -t4 būsena
Ankstesniame pavyzdyje mes filtravome visas „nustatytas“ TCP lizdo jungtis.
$ ss -t4 būsenos laukimo laikas$ ss -t4 būsena prijungta
10 pavyzdys: filtruokite adresą pagal prievado numerį
Taip pat galite filtruoti ryšį pagal prievado numerį arba nurodytą IP adresą taip:
$ ss -nt dst 127.0.0.1: 45807$ sudo ss -ntlp sport gt: 5000
Išvada
Šiame straipsnyje buvo nagrinėjami įvairūs ss komandos naudojimo būdai. Komanda ss yra geriausia alternatyva komandai netstat, kaip matėte šioje pamokoje. Naudodamiesi aukščiau pateiktais pavyzdžiais, galite lengvai stebėti sistemos lizdus ir tinklo jungtis.