Determinare a che ora è stata creata una connessione TCP attualmente aperta?


11

Come posso sapere a che ora è stata stabilita una connessione TCP attualmente aperta su Linux?


1
Quindi, hai risolto questo problema e non hai una vera domanda?
Sven

1
Ancora: questo è un problema per te o vuoi forzare una discussione? Nella domanda recentemente chiusa hai dichiarato di aver risolto questo.
Sven

2
Commento finale, perché non contribuire comunque alla risposta, invece di provare a interrogare le persone? Sono sicuro che sarebbero apprezzati e potresti anche ottenere un punto o due invece di guadagnare il disprezzo.
mdpc,

2
Ci piace che le persone abbandonino le soluzioni ai problemi, quindi vai avanti e pubblica le tue. Se altre persone hanno soluzioni migliori / diverse, meglio siamo tutti.
sysadmin1138

4
blog.stackoverflow.com/2011/07/… È perfettamente accettabile porre una domanda e rispondere a te stesso.
user9517

Risposte:


11

Sono stato in grado di utilizzare lsofper ottenere il descrittore di file, quindi ho corso stat /proc/<PID>/fd/<file descriptor>per ottenere la data.


1

Una combinazione di lsofe /proccome suggerito da @opsguy dovrebbe fare il lavoro:

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
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.