同じネットワークにつながっている端末のそれぞれIPアドレスを調べるには


同じネットワークにつながっているそれぞれIPアドレスを調べるにはどうすればいいでしょうか。

条件

[code]

    機器１ AB:CD:EF:12:34:01
    機器２ AB:CD:EF:12:34:02 
    機器３ AB:CD:EF:12:34:03
    機器４ MACアドレス不明
    
[/code]

全て、同一のローカルネットワークに接続しています。

試している案は下記の通りです。

同じNW上の全てのIPに対してpingをしたうえで、ARPテーブルを取得し、  
MACアドレスと照合する。

[code]

    #!/bin/bash -v
    for ((i = 100 ; i <= 254 ; i++)); do ping -c 1 -t 1 10.242.15.${i}; done
    arp -a
    ???
    ???
    
[/code]

結果は下記のように取得できましたが、時間がかかりすぎます。  
もう少し効率的な方法があればご教示ください。

[code]

    ? (10.242.16.42) at AB:CD:EF:12:34:01 on en5 ifscope [ethernet]
    ? (10.242.16.50) at AB:CD:EF:12:34:04 on en5 ifscope [ethernet]
    ? (10.242.16.146) at AB:CD:EF:12:34:03 on en5 ifscope [ethernet]
    ? (10.242.18.78) at AB:CD:EF:12:34:02 on en5 ifscope [ethernet]
    
[/code]

また、機器ごとのMACアドレスから、それぞれの機器のIPアドレスを変数で呼べるようにしたいのですが、どうするのがよいでしょうか。  
（機器１のIPアドレスを、シェル変数 EQ_IPADDR1とした場合）




`arp-scan`というツールを入手し試してみてください。

[code]

    $ arp-scan --interface=eth0 192.168.0.0/24
    Interface: eth0, datalink type: EN10MB (Ethernet)
    Starting arp-scan 1.4 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
    192.168.0.1     00:c0:9f:09:b8:db       QUANTA COMPUTER, INC.
    192.168.0.3     00:02:b3:bb:66:98       Intel Corporation
    192.168.0.5     00:02:a5:90:c3:e6       Compaq Computer Corporation
    192.168.0.6     00:c0:9f:0b:91:d1       QUANTA COMPUTER, INC.
    192.168.0.12    00:02:b3:46:0d:4c       Intel Corporation
    192.168.0.13    00:02:a5:de:c2:17       Compaq Computer Corporation
    192.168.0.87    00:0b:db:b2:fa:60       Dell ESG PCBA Test
    192.168.0.90    00:02:b3:06:d7:9b       Intel Corporation
    192.168.0.105   00:13:72:09:ad:76       Dell Inc.
    192.168.0.153   00:10:db:26:4d:52       Juniper Networks, Inc.
    192.168.0.191   00:01:e6:57:8b:68       Hewlett-Packard Company
    192.168.0.251   00:04:27:6a:5d:a1       Cisco Systems, Inc.
    192.168.0.196   00:30:c1:5e:58:7d       HEWLETT-PACKARD
    13 packets received by filter, 0 packets dropped by kernel
    Ending arp-scan: 256 hosts scanned in 3.386 seconds (75.61 hosts/sec).  13
    responded
    
[/code]




`arp-scan`というツールを入手し試してみてください。

[code]

    $ arp-scan --interface=eth0 192.168.0.0/24
    Interface: eth0, datalink type: EN10MB (Ethernet)
    Starting arp-scan 1.4 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
    192.168.0.1     00:c0:9f:09:b8:db       QUANTA COMPUTER, INC.
    192.168.0.3     00:02:b3:bb:66:98       Intel Corporation
    192.168.0.5     00:02:a5:90:c3:e6       Compaq Computer Corporation
    192.168.0.6     00:c0:9f:0b:91:d1       QUANTA COMPUTER, INC.
    192.168.0.12    00:02:b3:46:0d:4c       Intel Corporation
    192.168.0.13    00:02:a5:de:c2:17       Compaq Computer Corporation
    192.168.0.87    00:0b:db:b2:fa:60       Dell ESG PCBA Test
    192.168.0.90    00:02:b3:06:d7:9b       Intel Corporation
    192.168.0.105   00:13:72:09:ad:76       Dell Inc.
    192.168.0.153   00:10:db:26:4d:52       Juniper Networks, Inc.
    192.168.0.191   00:01:e6:57:8b:68       Hewlett-Packard Company
    192.168.0.251   00:04:27:6a:5d:a1       Cisco Systems, Inc.
    192.168.0.196   00:30:c1:5e:58:7d       HEWLETT-PACKARD
    13 packets received by filter, 0 packets dropped by kernel
    Ending arp-scan: 256 hosts scanned in 3.386 seconds (75.61 hosts/sec).  13
    responded
    
[/code]

