如何在 Linux 中短时间记录某个进程/应用程序曾经打开的所有端口?

如何在 Linux 中短时间记录某个进程/应用程序曾经打开的所有端口?

我有一个应用程序,它会对网络进行某种更新 ping,并在短时间内监听某个端口,以便在某个超时期间接收一些反馈。这段时间足够短,可以用 netstat 观察。我需要记录打开端口和关闭端口的事件。有什么想法吗?

答案1

我不确定这是最好的方法,但我用过

buffer1=$(ss -ltun); while true; do buffer2=$(ss -ltun); diff <(echo "$buffer1") <(echo "$buffer2") >> netlog2.log; buffer1=$buffer2; done

^C

cat netlog2.log 6c6 < tcp 0 8 172.16.1.215:31087
---

TCP 0 8 172.16.1.215:47339
6d5 < tcp 0 8 172.16.1.215:47339
11a11 tcp 0 8 172.16.1.215:49491
11d10 < tcp 0 8 172.16.1.215:49491
10a11 tcp 0 8 172.16.1.215:35249

相关内容