どのアプリケーションがどのポートを使用しているかを知るにはどうすればよいですか?


0

私は見てきました netstat MacBookで出力します。アプリケーションによっては、使用するポートを指定できることがあります。例えば、 utorrent あなたがそうすることを可能にします。私はポート55743を選び、それから走った netstat | grep 55743 そして出力は次のようになりました。

udp6       0      0  *.55743                *.*
udp4       0      0  *.55743                *.*

辞めたとき utorrent ポートは解放されます。しかし、ポート番号がわからない場合は、どのアプリケーションがどのポートを使用しているのかをどのように確認できますか?そして、いくつかのアプリケーションが外部サーバーデバイスと通信するために密かにポートを使用することは可能ですか?

回答:


2

David Houdeが述べたように、 lsof -i あなたの友達はあなたに現在のソケット接続/操作のスナップショットを与えます残念ながら、OS Xでは、 netstat この機能はサポートされていません。

他のオプションは次のとおりです。

Activity Monitor.app アプリケーションによって開かれているファイルとポートを確認できます。これは、プロセスをダブルクリックして[ファイルとポートを開く]タブを開くことで実行できます。

Dtrace - チェックアウト 社交的 スクリプトを終了するまでネットワーク操作に関する情報を継続的に提供します(control + c)。出力例

sudo /tmp/soconnect.d 
PID    PROCESS          FAM ADDRESS          PORT   LAT(us) RESULT
8211   X-Lite           2   192.168.1.109    5060        25 Success
4112   Google Chrome    2   173.194.34.134   443         53 In progress
8211   X-Lite           2   192.168.1.109    5060        30 Success

私が個人的に非常に気に入っているアプリケーションの1つは、ちょっとした密告ですが、商用のソフトウェアであることもあります。これはデスクトップファイアウォールソフトウェアですが、それはあなたにとって興味深いかもしれないいくつかの機能を持っています:

  • ネットワークモニタ。どのアプリケーションがどこに接続しているかを示します(ある意味でsoconnect.dの出力に似ています)。
  • アプリケーションごとのネットワークトラフィックをキャプチャします(つまり、wiresharkと同様に、ネットワークトラフィックを監視できますが、特定のアプリケーションのみに制限します)

あなたの2番目の質問に答えるために - はい、伝統的なオペレーティングシステム(OS X、Windowsなど)では、アプリケーションはさまざまな方法でサードパーティのシステムに接続して何かを送信することができます。多くのデスクトップファイアウォールは、各アプリケーションが接続できる場所を指定できるようにすることでこの問題に対処しようとしているため、一種のホワイトリストがあります。他のセキュリティと同様に、このアプローチにも落とし穴がありません。

ps。デスクトップファイアウォールソフトウェアのベンダーとは何の関係もない。


1

これを達成するには、さらにnetstat引数をいくつか使用するか、lsofを使用します。

netstat -lp
lsof -i udp:55743
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.