如何查找Mac上TCP端口上正在听的人/什么
有时,您可能会发现自己正在寻求寻找Mac上听力状态下的TCP连接的情况。无论您是解决特定的网络问题,还是只是寻求识别哪些过程正在侦听Mac上的特定端口,这将是有用的。
我们将使用命令行LSOF工具来找出Mac上打开的TCP连接上正在听的内容,这最适合对终端和sudo满意的高级Mac用户。
如何在MACOS上查找TCP端口上的内容
我们在这里使用的命令针对Macos Ventura和Macos Monterey,但也应该处理较旧的MacOS版本:
- 从/applications/Utilities/或通过Command+Spacebar打开“终端”应用程序/实用程序/或通过Spotlight
- 键入以下命令:
- 当要求时点击Enter并使用管理员密码执行命令,并查看Mac上的TCP端口的积极侦听的列表
sudo lsof -iTCP -sTCP:LISTEN -P -n
参见:[9修复]我的USB端口无法使用Windows 11!尝试这些方法
您将看到命令 /进程列表,进程ID(PID),类型(IPv6 vs IPv4),设备,节点(在这种情况下为TCP)和端口。

有了这些信息,您可以根据目标是什么来确定下一步。
对于那些好奇的人,让我们分解此处使用的命令和各种标志:
- sudo:使用超级用户特权运行命令,允许它显示所有用户(包括root)打开的网络连接。
- LSOF:列出系统上的所有打开文件,包括打开网络连接。
- -ITCP:过滤结果以仅显示TCP连接。
- -STCP:听:过滤结果以仅显示收听TCP连接。
- -p:禁用端口名称分辨率,仅显示端口号。
- -n:禁用主机名分辨率,仅显示IP地址。
LSOF命令非常强大,在确定哪些应用程序或过程与特定文件进行交互之前,我们已经介绍了它的用法,找到了哪些过程使用Internet连接,显示开放网络连接,侦听所有开放的Internet连接等等。
顺便说一句,如果您喜欢GUI,则可以尝试使用懒惰应用程序,该应用程序基本上是LSOF的GUI前端,可免费下载,并且活动监视器对类似功能也有限支持。
您是否有类似的技巧,命令或工具来查找Mac上的任何给定TCP端口的内容?在下面的评论中让我们知道。
