3

定期的にスクリプトからバックグラウンド ネットワーク デバイス検出プロセスを開始する必要があり、かなり高速である必要があります。現在、次のように NMAP を起動します。

nmap -sP 192.168.1.0/24

(私はIPアドレスを作っただけです、あなたはアイデアを得るでしょう). とにかく、上記はそのクラス C ネットワークで ping スイープを行います。問題は、このコマンドが完了するまでに通常 30 ~ 40 秒かかることです。これをもっと早くできるようになりたいです。

私の目的は、単にデバイス/ホストの検出です。特定のネットワーク上で稼働しているマシンの IP アドレスを知りたいだけです。ある種のスキャンが完了したら、ARP コマンドを使用して、稼働中のマシンの MAC アドレスも取得できます。

nmapまたは他の無料ツールでこれを行うより速い方法はありますか?fing (より高速) については知っていますが、find を商用製品に組み込むには莫大なライセンス料を支払う必要があります。したがって、nmap またはその他の無料ツールでこれを行うより高速な方法があれば、それは素晴らしいことです。

このツールは、Ubuntu Linux のコマンド ラインで実行する必要があります。GUI ツールや他の OS でしか動作しないツールには興味がありません。

4

1 に答える 1

6

最初にすべきことは-n、コマンドに追加して、すべてのアドレスで逆引き DNS ルックアップを実行しないようにすることです。これはおそらく最大のスピードアップです。

次に、可能であれば、root として Nmap コマンドを実行します。これにより、ルート以外の方法 (ポート 80 および 443 への TCP 接続呼び出し) よりも高速な ARP "ping" ホスト検出方法と、直接接続されていないアドレスに対する ICMP エコー要求が有効になります。ただし、通常のユーザーが Nmap 引数または環境変数を設定できるようにしないでください。setuid セーフではありません。

最後に、タイミング パラメータを調整して、遅いタイムアウトを回避できます。Nmap のデフォルトではあまり改善できない可能性が高いため、これはそのままにしておきます。-T4またはを設定することから始め-T5ます。

于 2013-11-20T22:51:15.077 に答える