banner
News center
Elite technology and exceptional precision

How to Find All IP Addresses on a Network

Mar 23, 2024

As a network administrator, understanding which IP addresses are currently in use on a network is extremely important.

Knowing who is connected to your network can be helpful at times. For instance, you may need to check the status of certain devices (whether they're up or down), find spare static IP addresses, or make an inventory of devices. Furthermore, this information can also help you identify any unauthorized access to your network and shared resources.

While you can check the connected IPs from your router’s configuration page, it does not show the static IP addresses. Luckily, there are several other ways that let you find all the IP addresses on a network. Let’s explore some of them.

arp is a built-in command line utility used to view and modify a system’s ARP cache. It is also used to find the MAC address of a system for a given IP address as the ARP cache stores IP to MAC address mapping for the system it communicates with.

Using the arp command, you can also find all IP addresses on your network. If arp is not pre-installed on your Linux machine or is mistakenly removed, you can install it with the following simple command:

On Debian-based distributions including Ubuntu:

On RHEL-based distributions:

On Arch-based distributions:

To find all IP addresses on your network, use the arp command without any arguments:

On Windows, you can get the same information using the -a flag:

Nmap is a free and open-source tool used for network scanning and mapping. Using Nmap, you can find out who is connected to your network, their IP and MAC addresses, operating system details, and the services they are running. It is a cross-platform tool available for both Linux and Windows.

To find all IP addresses on a network, use the nmap command:

Let's say to find all IP addresses on the network 192.168.22.0/24, you need to run:

The -sn option tells Nmap to perform only host scan (not probe the ports).

To print only the IP addresses and remove other information, use the command below.

The above command (with the -sn flag) only works on Linux.

You can also find the OS information associated with these IP addresses using the following command:

Angry IP Scanner is an open-source and cross-platform IP address and port scanner that pings each IP address in the defined range to check if it’s alive and responding. For each alive host, it determines its hostname, MAC address, hardware manufacturer, and open ports.

You can also export the scanned results in a CSV, TXT, and XML file. Angry IP Scanner is available for Linux, Windows, and macOS.

On Linux distributions such as Ubuntu, Debian, and Fedora, you can easily install Angry IP Scanner by downloading its DEB or RPM package, either from the GitHub Releases page or using the wget command.

Download: Angry IP Scanner

On Debian-based distributions:

Install the package using APT:

On RHEL-based distributions:

Then, use DNF to perform a local package installation:

A manual download from the GitHub page is recommended if you want the latest version of the software.

On Arch Linux, you can install Angry IP Scanner from the Arch User Repository (AUR) using yay:

To install Angry IP Scanner on Windows, download the installer file from the GitHub Releases page. Once downloaded, double-click the installer file to install it.

Download: Angry IP Scanner (Windows)

To find all the IP addresses on your network, launch Angry IP Scanner and specify the IP range (starting and ending IP address) or the network ID with prefix. You can also scan IP addresses from a text file. Then, click the Start button to start the scanning process.

Once the scanning is complete, it will display all the IP addresses scanned in the defined range. You can also include additional details like MAC address, MAC vendor, ports, etc. in the results from the Tools > Fetchers option.

From Tools > Preferences, you can configure further settings such as scanning dead hosts, enabling port scan, and changing the pinging method and display settings.

Netdiscover is another useful command-line network exploration utility that can discover all active hosts on a network using ARP requests. For all the discovered hosts, it displays their IP addresses, MAC addresses, and hardware manufacturer.

You can also use the Netdiscover utility to find all the IP addresses on your network. However, the Netdiscover tool is only available for Linux.

On Linux distributions, you can install Netdiscover using the following commands:

On Debian-based distributions:

To install Netdiscover from the Snap Store, install snap on your system first and then run the following command:

On Arch Linux, you'll first need to install and set up yay. Then, install Netdiscover by running:

Once installed, you can use the netdiscover command to discover all IP addresses on your network as follows:

Knowing all IP addresses on a network can help you identify potential security risks and troubleshoot connectivity issues. Basic commands like arp and netdiscover can provide a list of connected devices by their IP and MAC addresses, while tools such as Nmap and Angry IP Scanner can give you further insights into live hosts.

Once you are aware of who is connected to your network, finding who and what is using the network's bandwidth can further enhance your network's security and efficiency.

Ummara is a staff writer at MUO whose work focuses primarily on Linux. She has a degree in Telecommunication Engineering and has been writing about Linux for about 3 years.

-a-snDownload:DownloadStartToolsFetchersToolsPreferences