最近,由于端口耗尽问题,我需要重启电脑。最初我以为是网络问题,但阅读后,我意识到错误消息指向的是端口耗尽。
看完之后netstat -q
就很清楚发生了什么,Windows 系统进程绑定到每个可以想象到的端口,在你认为这是一个令人费解的问题之前,当我输入该命令时,屏幕实际上花了几分钟才滚动到底部……
PID 为 4,我确定这是系统进程。为什么会这样?这些是绑定但不活动的端口,为什么不清除它们?为什么有这么多?非常好奇。
一个数据点是,我最近设置了一个新的 FreeNAS 服务器,并且有 8 个 SMB 共享已连接到这台笔记本电脑。然而,在最后一次耗尽时,我只“连接”了 3 个,断开与它们的连接并没有释放任何端口。
知道这是怎么回事吗?系统进程的内存只有 24kb,我无法想象它会在这么多绑定且不活动的端口的情况下做什么……
答案1
使用进程资源管理器 - Windows Sysinternals检查系统进程的详细信息。
具体来说,检查“线程”选项卡中是否存在任何非 Microsoft 库。TCP/IP 选项卡也可能提供相关信息。