Netstat は、アクティブな接続、開いているポート、リッスンしているサービスなど、ネットワーク関連の情報を詳しく調べるときに非常に役立ちます。特に PC の動作が遅い場合やマルウェアの感染を心配している場合など、開いているはずのない不明な接続やポートが表示されるのは奇妙に感じることがあります。Netstat を正しく使用すれば、疑わしいプロセスやスタックした接続を見つけるのに役立つため、一種のネットワーク探偵ツールと言えます。常に完璧というわけではありませんが、舞台裏で何が起こっているかを示す優れたスナップショットを提供します。ただし、すべてのスイッチや結果の解釈方法に精通していない場合は特に、出力がわかりにくい場合があることに注意してください。しかし、使い方に慣れてしまえば、予期しないリモート IP や開いているはずのないポートなど、何かおかしなことが起こっていないかを素早く確認できるようになります。
WindowsでNetstatを使用する方法
WindowsでNetstatを実行する方法
まず最初に、Netstat が表示する情報の多くは管理者権限を必要とするため、コマンドラインを管理者権限で開く必要があります。手順は以下のとおりです。
- スタートを押して、cmdと入力します。
- コマンドプロンプトを右クリックし、「管理者として実行」を選択してください。そうしないと、一部のスイッチが機能しません。
netstatと入力してクリックしますEnter。接続の基本リストが表示されます。
「netstat が認識されません」などのエラーが表示される場合は、PATH 変数が間違っている可能性があります。これはまた別の問題です。しかし、ほとんどの場合、コマンドプロンプトを管理者権限で起動すれば問題なく動作します。また、PowerShell から起動する方法を記載しているガイドもありますが、これnetstatも同じで、PowerShell に入力するだけです。
アクティブなネットワーク接続を確認する方法
ここでは、現在のすべてのTCP/UDP接続(誰が誰と通信しているか)を確認できます。見覚えのないリモートIPアドレスや「ESTABLISHED」のままになっている接続がある場合は、さらに調査する価値があるかもしれません。対処方法は次のとおりです。
- 走る
netstat - 「ローカルアドレス」列と「外部アドレス」列を確認してください。例えば、
192.168.1.5:443はHTTPSポートを持つローカルIPアドレスですが、93.184.216.34:443はリモートサーバーです。 - 「状態」列を確認してください。ESTABLISHED と表示されている場合、その接続はアクティブです。TIME_WAITまたはCLOSE_WAIT と表示されている場合、おそらくクリーンアップ中でしょう。
これは、特に奇妙な外国の IP や、存在すべきでない接続に気付いた場合に、疑わしい接続や長引く接続を見つけるのに役立ちます。
すべてのリスニングポートを表示する方法
どのポートが開いていて接続を待機しているか(リスニング中)を確認したい場合は、-aスイッチを追加する必要があります。一部のアプリはトラフィックを静かにリスニングしている場合があり、このスイッチでそれらすべてを確認できます。
- 走る
netstat -a - リストをスキャンして、State列にLISTENINGがあるエントリを探します。
- これらのポートに関連付けられているアプリやサービスを特定してください。80、443、3389といったポート番号が表示されることがあります。これらはそれぞれ、Web、HTTPS、リモートデスクトップでよく使用されます。見覚えのないポートを見つけた場合は、さらに詳しく調査する価値があるかもしれません。
これらのポートにはマルウェアやブロートウェアが隠れている可能性があるので、異常がないか注意してください。
特定のポートを使用しているアプリを見つける方法
疑わしいポートに気づいたら、どのプロセスがそのポートを使用しているかを確認したいと思うでしょう。そのためには、-oスイッチの出力にPID(プロセスID)を含める必要があります。
- 走る
netstat -ano - 出力でポート番号を見つけて、最後の列の PID を確認します。
- PIDをアプリと照合するには、タスクマネージャー(Ctrl + Shift + Esc)を開き、詳細タブに移動してPIDを探します。どのプロセスが原因かがわかります。明らかな場合もあれば、そうでない場合もあります。マルウェアの中にはアプリ名を偽装するものもあるため、何かおかしい点があれば再確認してください。
これは、不正なプロセスを識別したり、ネットワーク リソースを占有しているものを確認したりするときに役立ちます。
プロトコル統計を確認する方法
ネットワークの問題が頻繁に発生する場合は、プロトコル統計を確認することで、パケットのドロップやリセットなど、問題の原因となる事象が明らかになることがあります。以下のコマンドを実行してください。
netstat -s- 出力を確認し、TCPおよびUDPのエラー数、リセット、パケットのドロップ数を確認してください。エラー数が急増する場合もありますが、これはネットワークの輻輳や干渉を示唆しています。トラブルシューティングを行う場合は、時間の経過や特定のアクション後の統計情報を比較して、パターンを見つけてください。
ライブ接続の変更を視聴する方法
リアルタイム監視を行うには、Netstat を定期的に更新して、接続状況を確認することができます。次のようにします。
- 走る
netstat -an 5 - 5秒ごとに更新され、接続状況をリアルタイムで更新します。表示が乱雑だったり、表示が速かったりするため、完璧な鮮明さは期待できませんが、接続試行や切断をリアルタイムで監視するのに便利です。ただし、設定によっては動作しなかったり、追加のパラメータが必要になったりする場合がありますので、必要に応じて試してみてください。
Netstatコマンドに関するよくある質問
これは基本的にネットワーク スキャナーであり、アクティブな接続、開いているポート、ルーティング情報を表示するので、異常なネットワーク動作のトラブルシューティングを行うときに非常に便利です。
netstat -anoを実行し、出力の PID を タスク マネージャー の 詳細 タブのプロセスと一致させます。
はい、両方の OS バージョンで同じなので、互換性について心配する必要はありません。
正確にはそうではありません。マルウェアを直接検出することはできませんが、疑わしいリモートIPアドレスや、存在すべきではないポートが開いていることを警告することはできます。これらは、悪意のあるものが潜んでいる兆候である可能性があります。
総じて、Netstat はやや古風なツールではありますが、ネットワークの裏側を覗き込み、健全性を把握する手軽な手段です。ただし、徹底的なセキュリティチェックを行う場合は、Netstat だけに頼るべきではありませんが、簡単なスキャンやトラブルシューティングの出発点としては最適です。
まとめ
netstatスイッチを使用して、コマンド ラインを管理者として実行します。- アクティブな接続を確認し、異常な IP やステータスがないか確認します。
- ポート情報と PID を使用してアプリを識別します。
- ネットワークのハングや切断が頻繁に発生する場合は、プロトコル エラーを確認してください。
- 動的監視にはライブ更新を使用します。
まとめ
Netstatは、使い慣れてしまえばかなり強力です。魔法ではありませんが、不審なアクティビティを検知したり、ネットワークの背後で何が起こっているのかを把握したりするのに驚くほど便利です。マルウェアが関与しているなど、状況によってはより高度なツールが必要になる場合もありますが、Netstatは適切な指示を与えてくれます。これで、誰かのトラブルシューティングにかかる時間が少しでも短縮されることを願っています。