杀死没有进程的UDP端口?

杀死没有进程的UDP端口?

我的 VPN 客户端有时无法绑定到它使用的 UDP 端口 (500)。虽然它已经退出,但它似乎在上次运行时留下了对端口 500 的“绑定”。

该端口被报告为“已在使用中”(Mac os X),但没有关联进程:

$ sudo netstat -na | grep "udp.*\.500\>"

udp4       0      0  192.168.50.181.500     *.*                               
udp4       0      0  192.168.29.166.500     *.*                               

sudo lsof没有显示端口 500 上的进程(即sudo lsof -i:500 -P没有报告任何内容)。

重新启动机器后,我可以成功使用 VPN 客户端,但希望有一种不那么破坏性的方式来清除状态。

答案1

端口 500 是isakmpIPsec VPN 使用的。

查找/sbin/ifconfig可能配置为使用该接口的任何虚拟网络接口。

答案2

OS X 上的另一个有用的命令将帮助您确保没有为特定的 UDP 或 TCP 端口设置进程:

lsof -Pan -i tcp -i udp

答案3

尝试使用netstat -nap来确定哪个程序打开了端口。我没有 OSX 系统可以测试,但在 Linux 上,内核端口显示-为程序。

编辑:快速搜索OSX ipsec disable表明 OSX 可能默认启用了 IPSEC。如果是这样,您需要禁用它以释放端口。

相关内容