Netdiscover is a network address discovery tool that was developed mainly for those wireless networks without DHCP servers, though it also works on wired networks. It sends ARP requests and sniffs for replies.
Built on top of libnet and libpcap, it can passively detect on-line hosts, or search for them, by actively sending ARP requests, it can also be used to inspect your network ARP traffic, or find network addresses using auto scan mode, which will scan for common local networks
Requirements
- libpcap
- libnet > 1.1.2
Tested to work on Linux, Solaris MacOS X and OpenBSD, other *nix variants may work.
Usage
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
Usage: ./netdiscover [-i device] [-r range | -p] [-s time] [-n node] [-c count] [-f] [-S]
-i device
The network device to sniff at and inject packets. If no device was
specified, first available will be used.
-r range
Scan a given range instead of auto scan. Valid range values are:
192.168.0.0/24, 192.168.0.0/16 or 192.168.0.0/8
-p
Enable passive mode do not send anything, only sniff
-s time
It will sleep given time in milliseconds between each arp request
injection. (default 1)
-c count
Number of times to send each arp reques. Usefull for networks with
packet loss, so it will scan given times for each host.
-n node
Last ip octet used for scanning as source host, you can change it
if the default host is already used (from 2 to 253) (default 66)
-S
Enable sleep time supression betwen each request. I will sleep each 255
scanned hosts instead of do it by each one, this mode was used on 0.3 beta4
and older releases. Avoid this option on networks with packet lossing,
or in wireless networks with low signal level. (also called hardcore mode)
-f
Enable fastmode scan, it will only scan for hosts .1, .100, .254 on each
network, usefull when searching for addresses being used, after find one
you can make a specific range scan to see online boxes.
Scanned hosts can be easily modified at fast_ips[] array on main.c source.
If -p or -r options are not used, netdiscover will automatically scan for common
lan addresses. Those address lists can be modified at common_net[] on main.c
|
Build
1
2
3
4
|
$ sh update-oui-database.sh (optional)
$ ./configure
$ make
# make install
|
You can download Netdiscover here: