Feststellen, zu welchem ​​Zeitpunkt eine aktuell geöffnete TCP-Verbindung erstellt wurde?

11

Wie kann ich herausfinden, wann eine aktuell geöffnete TCP-Verbindung unter Linux hergestellt wurde?

opsguy
quelle
1
Sie haben dieses Problem gelöst und haben keine eigentliche Frage?
Sven
1
Nochmals: Ist das ein Problem für Sie oder möchten Sie eine Diskussion erzwingen? In der kürzlich geschlossenen Frage haben Sie angegeben, dass Sie dies gelöst haben.
Sven
2
Abschließender Kommentar, warum nicht trotzdem die Antwort selbst einbringen, anstatt zu versuchen, Leute zu befragen? Ich bin sicher, sie wären dankbar und Sie könnten sogar ein oder zwei Punkte bekommen, anstatt sich Verachtung zu verdienen.
Mdpc
2
Wir möchten, dass die Leute Lösungen für Probleme fallen lassen, also posten Sie Ihre. Wenn andere Menschen bessere / andere Lösungen haben, geht es uns allen besser.
sysadmin1138
4
blog.stackoverflow.com/2011/07/… Es ist durchaus akzeptabel, eine Frage zu stellen und sie dann selbst zu beantworten.
user9517

Antworten:

11

Ich konnte verwenden lsof, um den Dateideskriptor abzurufen, und lief dann stat /proc/<PID>/fd/<file descriptor>, um das Datum abzurufen.

opsguy
quelle
1

Eine Kombination von lsofund /procwie von @opsguy vorgeschlagen sollte den Job machen:

lsof -P -i tcp | awk '{print $2,$4}' | tr -d 'u' | sort -u \
| while read pid fd; do stat --printf "%z %N\n" /proc/$pid/fd/$fd ; done | sort -r
der brx in den wänden
quelle