web-dev-qa-db-ja.com

nmapとnetstatの違いは何ですか?

私はネットワーキングについて少し学ぼうとしていますが、助けを得たいと思っていました。

nmapnetstatの違いを知っている人はいますか?

私はそれらの使い方とポートのチェック方法を知っていますが、違いも知りたいです:)

4
mt9

Nmap はネットワークマッピングツールです。つまり、ネットワーク上のホストに関する情報(IP、開いているポートなど)を検出するために使用されます。 Netstatは、コンピューターとの間のアクティブな接続を一覧表示するために使用されるネットワーク統計ツールです。 https://en.wikipedia.org/wiki/Netstat を参照してください。

6
tourdetour

Nmapとnetstatには、互いに大きく異なる多くの機能がありますが、区別が難しいものもあります。 「明白な違い」のカテゴリでは、netstatは次のことができます。

  • 現在アクティブな接続を表示する
  • ルート情報を表示する
  • ネットワークインターフェイスの統計情報を表示する

一方、Nmapは:

  • リモートシステムで開いているポートを表示する
  • ターゲットのTCP/IPスタックのフィンガープリント
  • サービスとアプリケーションのバージョン情報を決定する

などなど。しかし、もちろん、Nmapをlocalhostに対して実行すると、netstatが表示するものと同様の情報が表示されます。それで、違いは何ですか?

Netstatはその情報をOSから直接取得します。カーネルにすべてのリスニングポートのリストを要求し、それらを表示します。どのポートに加えて、どのアドレスがリッスンしているか、および十分な権限で、どのプロセスIDかを表示できます。

Nmapは実験によって情報を取得し、各ポートに順番に接続を試み、接続試行の結果を表示します。このプロセスははるかに遅いため、デフォルトでは、最も一般的な1000個のポート番号のみが試行されます。さらに各ポートをプローブして、実行中のサービスのタイプを判別できますが、プロセスIDを表示することはできません(SNMPを実行していて、 snmp-netstatスクリプト を使用している場合を除く)。

では、いつnetstatを使用すべきですか?

  • ローカルマシンで何がリッスンしているかを知りたいとき。
  • 各ポートのプロセスまたはインターフェース/アドレス情報が必要な場合。
  • OSが正しい答えを出すことを信頼するとき。ハッキングされた場合、ルートキットはOSを実際に何が起こっているかについてnetstatに嘘をつく可能性があります。

いつNmapを使用する必要がありますか?

  • リモートシステムで開いているポートについて知りたい場合。
  • 各ポートでリッスンしているサービスに関する詳細情報が必要な場合。
  • リスニングポートに関するセカンドオピニオンが必要な場合。上記のルートキットに関するコメントを参照してください。
3
bonsaiviking