Dit artikel behandelt het gebruik van het ss-commando met enkele duidelijke voorbeelden. Alle opdrachten die in dit artikel worden getoond, zijn uitgevoerd op de Ubuntu 20.04-distributie om de statistieken van socket- en netwerkverbindingen te controleren.
Voorbeeld 1: Lijst met netwerkverbindingen met ss Command
U kunt eenvoudig een lijst maken van alle netwerkverbindingen die in een systeem aanwezig zijn, inclusief TCP-, UDP- en UNIX-socketverbindingen, met behulp van de volgende ss-opdracht. De uitvoer wordt weergegeven in "minder" formaat, zodat u door het uitvoervenster kunt bladeren:
$ ss | minder
Voorbeeld 2: Lijst met TCP-, UDP- en Unix-socketverbindingen
U kunt ook de TCP-, UDP- en UNIX-socketverbindingen filteren met de volgende opties:
Als u alleen de optie "t" gebruikt, worden verbindingen weergegeven die 'Verbonden' of 'Gevestigd' zijn.' Deze optie alleen toont u niet de TCP-socketverbindingen die 'Luisteren'.'
$ ss -t
Gebruik voor TCP de optie '-t', samen met de tag '-A'.
$ ss -Een tcp
Gebruik voor UDP-verbindingen de volgende opdracht:
$ ss -ua$ ss -a -A udp
De 'a'-optie geeft zowel 'Verbonden' als 'Luisteren' weer. UDP is een verbindingsloos protocol, dus het gebruik van 'ss -u' alleen zal niets weergeven. De 'a' kan echter worden gebruikt om alle UDP-verbindingen weer te geven.
Gebruik de volgende opdracht voor Unix-socketverbindingen:
$ ss x
Voorbeeld 3: Snellere uitvoer weergeven
De optie "n" die wordt gebruikt met 't' voorkomt dat socketstatistieken IP-adressen omzetten in hostnamen en geeft de snellere uitvoer als volgt weer:
$ ss -nt
Voorbeeld 4: Alleen luisteraansluitingen weergeven
U kunt ook alleen de TCP-socketverbindingen weergeven die luisteren. De optie "n" negeert het oplossen van de hostnamen van het IP-adres om de uitvoer sneller weer te geven.
$ ss -ltn
Vervang voor alle UDP-luisterverbindingen de 't'-optie door de 'u'-optie, als volgt:
$ ss -lun
Voorbeeld 5: Procesnaam weergeven met pid
U kunt de procesnaam weergeven, samen met de pid van elk proces, met behulp van de volgende ss-opdracht met de optie '-ltp':
$ sudo ss -ltp
Voorbeeld 6: Statistieken weergeven
Het gebruik van de 's'-optie met het ss-commando geeft de volledige statistieken als volgt weer:
$ ss -s
Voorbeeld 7: Timerdetails van verbinding weergeven
Door de '-o'-optie te gebruiken met het ss-commando, kunt u de tijdinformatie van elke verbinding weergeven. De tijddetails informeren de gebruiker hoe lang deze verbinding in stand is gehouden:
$ ss -tn -o
Voorbeeld 8: IPV6- of IPV4-socketverbinding afdrukken
Om alleen de IPv4-socketverbindingen af te drukken, gebruikt u als volgt de optie '-4' met '-f inet':
$ ss -tl4$ ss -tl -f inet
Gebruik voor IPV6 de optie '-6' of '-f inet.'
$ ss -tl6
Voorbeeld 9: TCP-verbindingen filteren op staat
U kunt verbindingen ook filteren op verbindingsstatus met de opdracht ss. Verbindingen kunnen in verschillende toestanden bestaan, zoals tot stand gebracht, syn-recv, syn-sent, fin-wait-1, fin-wait-2, time-wait, close-wait, closed, all, last-ack, closing, connected , emmer, gesynchroniseerd en emmer.
Dus, volgens de gebruikersvereisten, kunt u elke verbindingsstatus gebruiken en filteren door de volgende opdracht uit te voeren:
$ ss [ OPTIES ] staat [ Staatsnaam ]$ ss -t4 staat vastgesteld
In het bovenstaande voorbeeld hebben we alle 'vastgestelde' socketverbindingen van TCP gefilterd.
$ ss -t4 staat tijd-wacht$ ss -t4 staat verbonden
Voorbeeld 10: Adres filteren op poortnummer
U kunt de verbinding ook als volgt filteren op poortnummer of op een opgegeven IP-adres:
$ ss -nt dst 127.0.0.1:45807$ sudo ss -ntlp sport gt: 5000
Conclusie
Dit artikel onderzocht de verschillende toepassingen van het ss-commando. De opdracht ss is het beste alternatief voor de opdracht netstat, zoals je in deze tutorial hebt gezien. Met behulp van de bovenstaande voorbeelden kunt u eenvoudig systeemaansluitingen en netwerkverbindingen controleren.