NMAPネットワークスキャンは、後続のARPキャッシュダンプで見つからないエントリのIPアドレスとMACアドレスを表示しますか?

NMAPネットワークスキャンは、後続のARPキャッシュダンプで見つからないエントリのIPアドレスとMACアドレスを表示しますか?

私の論理はこれです

  1. サブネット定義のインポート
  2. nmaparpキャッシュを埋めるためにサブネット内のすべてのエントリをスキャンするために使用されます。
  3. この/usr/sbin/arpツールを使用してarpキャッシュをダンプします。
  4. arp キャッシュを解析して、(IP-address, MAC-address)サブネット内のすべてのエントリのペアを取得します。

これは通常かなりうまく機能しますが、今はこれがうまくいかない状況にあります。

私が次のサブネットにあるとしましょう。10.199.200.0/21

私は走るnmap

sudo /usr/bin/nmap -sP --send-ip -n 10.199.200.0/21

検索されたすべてのデバイスが表示されます。

Starting Nmap 7.01 ( https://nmap.org ) at 2018-08-09 15:45 MDT
Nmap scan report for 10.199.200.1
Host is up (0.00066s latency).
MAC Address: FC:AA:14:XX:XX:XX(Giga-byte Technology)
Nmap scan report for 10.199.200.2
Host is up (0.00038s latency).
MAC Address: C2:EA:E4:XX:XX:XX(Unknown)
Nmap scan report for 10.199.200.4
Host is up (0.00045s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.5
Host is up (0.00041s latency).
MAC Address: 00:1A:64:XX:XX:XX(IBM)
Nmap scan report for 10.199.200.6
Host is up (0.0010s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.8
Host is up (0.00027s latency).
MAC Address: 40:F2:E9:XX:XX:XX(IBM)
Nmap scan report for 10.199.200.9
Host is up (0.00061s latency).
MAC Address: 1C:98:EC:XX:XX:XX(Unknown)
Nmap scan report for 10.199.200.10
Host is up (0.00038s latency).
MAC Address: D0:67:26:XX:XX:XX(Unknown)
Nmap scan report for 10.199.200.11
Host is up (0.00075s latency).
MAC Address: 7C:AD:74:XX:XX:XX(Cisco Systems)
Nmap scan report for 10.199.200.12
Host is up (0.00053s latency).
MAC Address: 68:72:51:XX:XX:XX(Ubiquiti Networks)
Nmap scan report for 10.199.200.13
Host is up (0.00061s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.15
Host is up (0.00098s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.16
Host is up (0.00088s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.18
Host is up (0.0017s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.19
Host is up (0.00080s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.20
Host is up (0.00076s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.22
Host is up (0.00078s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.23
Host is up (0.0011s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.24
Host is up (0.0010s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.26
Host is up (0.00058s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.27
Host is up (0.00091s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.28
Host is up (0.00074s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.29
Host is up (0.0011s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.30
Host is up (0.00089s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.31
Host is up (0.00060s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)
Nmap scan report for 10.199.200.32
Host is up (0.00096s latency).
MAC Address: 00:50:56:XX:XX:XX(VMware)

しかし、arpキャッシュをダンプしようとすると

/usr/sbin/arp

これだけ得ました。前のスキャンで表示された項目の多くが欠落しています。

Address                  HWtype  HWaddress           Flags Mask            Iface
10.199.200.179                   (incomplete)                              enp2s0
10.199.202.172                   (incomplete)                              enp2s0
10.199.205.70                    (incomplete)                              enp2s0
10.199.206.73            ether   f4:5c:89:XX:XX:XX  C                     enp2s0
10.199.202.42                    (incomplete)                              enp2s0
10.199.202.245                   (incomplete)                              enp2s0
10.199.205.74                    (incomplete)                              enp2s0
10.199.200.2             ether   c2:ea:e4:XX:XX:XX  C                     enp2s0
10.199.205.21                    (incomplete)                              enp2s0
10.199.207.193                   (incomplete)                              enp2s0
10.199.203.231                   (incomplete)                              enp2s0
10.199.203.162                   (incomplete)                              enp2s0
10.199.204.181                   (incomplete)                              enp2s0
10.199.207.79                    (incomplete)                              enp2s0
10.199.205.94                    (incomplete)                              enp2s0
10.199.203.109                   (incomplete)                              enp2s0
10.199.206.44                    (incomplete)                              enp2s0
10.199.204.51                    (incomplete)                              enp2s0
10.199.200.209                   (incomplete)                              enp2s0
10.199.206.239                   (incomplete)                              enp2s0
10.199.203.235                   (incomplete)                              enp2s0
10.199.206.170                   (incomplete)                              enp2s0
10.199.201.69                    (incomplete)                              enp2s0
10.199.205.98                    (incomplete)                              enp2s0
10.199.203.113                   (incomplete)                              enp2s0
10.199.200.229                   (incomplete)                              enp2s0
10.199.206.190                   (incomplete)                              enp2s0
10.199.203.186                   (incomplete)                              enp2s0
10.199.200.99                    (incomplete)                              enp2s0
10.199.205.118                   (incomplete)                              enp2s0
10.199.201.20                    (incomplete)                              enp2s0
10.199.207.34                    (incomplete)                              enp2s0
10.199.203.192                   (incomplete)                              enp2s0
10.199.205.252                   (incomplete)                              enp2s0
10.199.200.180                   (incomplete)                              enp2s0
10.199.202.165                   (incomplete)                              enp2s0
10.199.206.66                    (incomplete)                              enp2s0
10.199.205.122                   (incomplete)                              enp2s0
10.199.205.197                   (incomplete)                              enp2s0
10.199.203.212                   (incomplete)                              enp2s0
10.199.205.128                   (incomplete)                              enp2s0
10.199.203.151                   (incomplete)                              enp2s0
10.199.206.139           ether   f4:5c:89:XX:XX:XX  C                     enp2s0
10.199.200.184                   (incomplete)                              enp2s0
10.199.206.86                    (incomplete)                              enp2s0
10.199.202.116                   (incomplete)                              enp2s0
10.199.207.127                   (incomplete)                              enp2s0
10.199.206.17                    (incomplete)                              enp2s0
10.199.201.44                    (incomplete)                              enp2s0
10.199.202.120                   (incomplete)                              enp2s0
10.199.206.37                    (incomplete)                              enp2s0
10.199.204.52                    (incomplete)                              enp2s0
10.199.205.221                   (incomplete)                              enp2s0
10.199.206.224                   (incomplete)                              enp2s0
10.199.200.149                   (incomplete)                              enp2s0
10.199.206.163                   (incomplete)                              enp2s0
10.199.205.91                    (incomplete)                              enp2s0
10.199.206.41                    (incomplete)                              enp2s0
10.199.202.207                   (incomplete)                              enp2s0
10.199.205.225                   (incomplete)                              enp2s0
10.199.206.244                   (incomplete)                              enp2s0
10.199.203.179                   (incomplete)                              enp2s0
10.199.201.66                    (incomplete)                              enp2s0
10.199.205.111                   (incomplete)                              enp2s0
10.199.200.39                    (incomplete)                              enp2s0
10.199.207.27                    (incomplete)                              enp2s0
10.199.200.226                   (incomplete)                              enp2s0
10.199.202.211                   (incomplete)                              enp2s0
10.199.200.173                   (incomplete)                              enp2s0
10.199.207.161                   (incomplete)                              enp2s0
10.199.205.176                   (incomplete)                              enp2s0
10.199.207.108                   (incomplete)                              enp2s0
10.199.205.115                   (incomplete)                              enp2s0
10.199.206.6                     (incomplete)                              enp2s0
10.199.207.47                    (incomplete)                              enp2s0
10.199.204.208                   (incomplete)                              enp2s0
10.199.200.246                   (incomplete)                              enp2s0

(両方の出力が不完全であることに注意してください)

デフォルトでは、nmap後続のコマンドダンプで完全に欠落しているエントリに対してIP / MACが表示されるか、arpIPは存在しますが、MACアドレスは次のように表示されます。(incomplete)

次のようにして、arpキャッシュ内のエントリのタイムアウトを増やしました。

echo 'net.ipv4.neigh.default.gc_stale_time=600' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv4.neigh.default.base_reachable_time_ms=1200000' | sudo tee -a /etc/sysctl.conf

しかし、あまり差がないようです。

ここで何が起こっているのでしょうか?arp表示されるコンテンツが表示されないのはなぜですかnmapnmapキャッシュが正しく満たされていませんか?

私が気づいたもう一つのことは、ユーティリティを使用すると、見つかったすべてのarp-scan項目が表示されることです。nmap

答え1

arpキャッシュは単なるキャッシュです。これは、すぐに必要になる可能性があるいくつかの値を保持しますが、他の値のためのスペースを作成するために破棄される可能性があることを意味します。

/ 21ネットワークには2048個のアドレスがあるため、他のエントリのスロットを確保するためにそれらの一部がキャッシュから削除されます。以前は小規模ネットワークで使用したことがあります。

nmapの出力をスキャンする必要があります。異なる行の情報を組み合わせる必要がありますが、完全でなければなりません。

編集する

(incomplete)各項目は応答が受信されるまで開始されます。したがって、キャッシュがいっぱいになると、カーネルは以前の完全なエントリまたは応答したばかりの最新のエントリを削除する必要があります。

寸法の場合ここ:

sysctl -w net.ipv4.neigh.default.gc_thresh1=<n>:gc_thresh1 は、ARP キャッシュに存在できるエントリの最小数を示します。アイテム数がこの設定未満の場合、ガベージコレクションはトリガされません。

sysctl -w net.ipv4.neigh.default.gc_thresh2=<n>:gc_thresh2は、ARPキャッシュに存在できるソフト最大エントリ数を示します。この設定は、このソフト最大値に達してから約5秒後にARPガベージコレクションがトリガされるため、最も重要です。

sysctl -w net.ipv4.neigh.default.gc_thresh3=<n>:gc_thresh3 は、ARP キャッシュのハード最大エントリ数を示します。

答え2

具体的には、アルペジオを追跡したい場合は、主にtcpdumpスキャンで使用します。nmap

tcpdump -ennl -i eth0 arp | grep is-at | tee foo

実行時に実行されます。キャプチャする数nmapによっては、ホスト名またはIPごとに追加の制限が必要になる場合があります。tcpdump

答え3

あなたの質問と対話すると、MACはレイヤ2にあるので、ネットワークにローカルであることを理解していないようです。

ネットワーク外の複数のリモートIPアドレスを検索すると、ローカルゲートウェイ/ルーターのMACおよびIPアドレスのみがARPキャッシュに表示されます。

関連情報