#1 楼
Linux正如正确地提到@ Nirlzr,
netstat -ape | grep <proc_name/pid>
将向您显示进程的活动连接。它可能对您来说就足够了,但是在某些情况下是不行的。 netstat
有一些盲点-它仅显示特定时间点的连接。因此,显然不会显示快速关闭的连接以及执行netstat
之前或之后关闭的每个连接。 一个解决方案是使用
strace
,它可以帮助您监视进程创建的连接。要启动进程并监视其连接:
strace -f -e trace=network -s 10000 <process [arg1] [arg2] [...]>
要监视已经存在的进程:
strace -p <pid> -f -e trace=network -s 10000
,如果您不知道其PID,请使用pidof <processname>
,然后使用
grep
魔术只打印IP地址:strace -f -e trace=network <process [args...]> 2>&1 | grep -oP 'connect.*inet_addr\("\K[^"]+'
Windows
在Windows中,您还可以通过
netstat
使用Get-NetTCPConnection
或powershell
的改进版本。但是两者都有前面提到的盲点。 推荐的两个解决方案是:
Microsoft的网络监视器
Nirsoft的TcpLogView
两者都有能力在打开时监视连接,并带有漂亮的GUI来显示它。
#2 楼
由于OP的回答在细节上有点低,因此我假设使用Linux和Dynamic IP。这通常包括用于现有连接的IP地址和端口。如果要列出Linux上的现有连接及其拥有的进程,请运行netstat
命令。通过提供一些命令行参数,您可以获得所需的信息,始终建议您查阅手册页,但对于您运行
netstat -ape
的特定情况,以列出其pid和用户名的所有连接。评论
在Windows上,它是netstat -n -b
–Y M
17年8月4日在17:33
它的Windows,但非常感谢,我会研究一下
–布鲁诺·塞克(Bruno Cerk)
17年8月4日在17:46
评论
Network Monitor只是做了我需要的事情,它首先将源地址显示为“网站”地址,例如“ something.address1.net”,但是随后在单击它时搜索了它提供的信息,所以我设法找到了IP地址和港口,那就是我所需要的
–布鲁诺·塞克(Bruno Cerk)
17年8月7日在5:10
这真的很有帮助,我确定从现在开始我将大量使用该软件
–布鲁诺·塞克(Bruno Cerk)
17年8月7日在5:11