
Ich möchte die Prozesse auflisten, die mit einer bestimmten IP-Adresse und einem bestimmten Port verbunden sind. Gibt es dafür einen Befehl?
Antwort1
Mit lsof
:
lsof -nPi @192.168.1.123:443
(Hinzufügen -t
, wenn Sie nur die Prozess-IDs möchten).
Dadurch werden auch die an diese Adresse gebundenen Sockets aufgelistet.
Mit ss
(von iproute2
unter Linux):
ss state established dst 192.168.1.123 'dport = :443'
Mit PSMiscs fuser
:
fuser -n tcp ,192.168.1.123,443
fuser -n udp ,192.168.1.123,443
Beachten Sie jedoch, dass (zumindest hier Version 22.21) die IPv6-zugeordneten IPv4-Adressen nicht gemeldet werden. Dafür benötigen Sie separate Abfragen:
fuser -n tcp ,::FFFF:C0A8:017B,443
( ::FFFF:C0A8:017B
dabei handelt es sich um die IPv6-zugeordnete Version von 192.168.1.123).
Antwort2
Schauen Sie sich an, ss
welches das alte Modell ersetztnetstat
Zum Beispiel:
ss -atp
Listet als Root alle aktuellen TCP-Verbindungen auf dem Server mit Prozessnamen und PIDs auf.
man ss
für weitere Optionen.
Beste grüße
Antwort3
Das Format ist:
lsof -i [tcp|udp][@Hostadresse][:[Dienstname|Hafen]]
Z.B,
lsof -i [email protected]:443
Sehenlsof(8).