プロセスのない 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 はisakmp、IPsec VPN によって使用されます。

/sbin/ifconfigそれを使用するように構成されている可能性のある仮想ネットワーク インターフェイスを探します。

答え2

OS X のもう 1 つの便利なコマンドは、特定の UDP または TCP ポートにプロセスが設定されていないことを確認するのに役立ちます。

lsof -Pan -i tcp -i udp

答え3

どのプログラムがポートを開いているかを判断するには、を使用してみてくださいnetstat -nap。テストするための OSX システムはありませんが、Linux ではカーネル ポートが-プログラムとして表示されます。

編集: 簡単に検索してみると、OSX ipsec disableOSX では IPSEC がデフォルトで有効になっている可能性があることがわかります。その場合は、ポートを解放するために無効にする必要があります。

関連情報