Whether learned using DHCP or not, every host that uses IP version 4 needs to have some settings to work correctly. Let’s know how to verify IP Parameters for client OS i.e. Windows, MacOS and Linux.
Host Settings for IPv4
To work correctly, an IPv4 host needs to know these values:
- DNS server IP addresses
- Default gateway (router) IP address
- Device’s own IP address
- Device’s own subnet mask
To review the basics, the host must know the IP address of one or more DNS servers to send the servers’ name resolution requests. For enterprises, the servers may reside in the enterprise. The host on the left (sometimes called an endpoint) typically knows the addresses of at least two DNS servers for redundancy. If the first DNS fails to respond, the endpoint can then attempt name resolution with the next DNS server.
Each endpoint needs to know the IP address of a router that resides in the same subnet. The endpoint uses that router as its default router or default gateway. From a host logic perspective, the host can then forward packets destined for addresses outside the subnet to the default router, with that router then forwarding the packet based on its routing table.
Of course, each device needs its own IP address and subnet mask. Equally as important, note that the host and the default router need to agree as to the addresses inside the subnet. The host will use the address and mask to do the math to determine which addresses are in the same subnet and which are in other subnets. For routing to work correctly, the default router’s interface address and mask should result in the same definition of the subnet with the same addresses.
Host IP Settings on Windows
Most every OS in the world—certainly the more common OSs people work with every day—have a fairly easy-to-reach settings window that lists most if not all the IPv4 settings in one place. e Network configuration screen from a Windows 10 host from the network area of the Windows Control Panel. This particular example shows the big four settings: address, mask, router, and DNS. However , beyond the GUI, most OSs have a variety of networking commands available from a command line. With all Windows versions, the ipconfig and ipconfig /all commands supply the most direct help. As you can see, both list the address, mask, and default gateway, with the ipconfig /all command also listing the DNS server settings.
Another common command on most user host OSs is the netstat –rn
command. This command lists the host’s IP routing table. Of interest, the top of the table lists a route based on the default gateway, with the destination subnet and mask listed as 0.0.0.0 and 0.0.0.0. The top of the output also lists several other routes related to having a working interface, like a route to the subnet connected to the interface.
Host IP Settings on macOS
Although the particulars vary, like Windows, macOS has both a graphical interface to see network settings and a variety of network commands. It shows the network settings in macOS for an Ethernet interface, with the address, mask, default router, and DNS server addresses. Also note the setting states that the interface is using DHCP.
macOS and Linux both support the ifconfig
command to list information similar to the Windows ipconfig /all command. (Note that ifconfig
does not have an /all option.) Like Windows, macOS adds a default route to its host routing table based on the default gateway, as well as a route to the local subnet calculated based on the IP address and mask learned with DHCP. And like Windows, macOS uses the netstat –rn
command to list those routes—but with several differences in the output.
Host IP Settings on Linux
On Linux, the graphical windows to display network settings differ for many reasons. First, the Linux world includes a large number of different Linux versions or distributions. Additionally, Linux separates the OS from the desktop (the graphical interface) so that a user of one Linux distribution can choose between different desktop interfaces. As a result, you will see different GUI screens to display the Linux network settings.
The image in Figure(examples from the MATE desktop included in the Ubuntu MATE Linux distribution) shows details for a wireless LAN adapter and includes the IPv4 address, mask, default router, and primary DNS IP address.
From the command line, Linux hosts will often support a large set of commands. However, an older set of commands, referenced together as net-tools, has been deprecated in Linux, to the point that some Linux distributions do not include net-tools. (You can easily add nettools to most Linux distributions.) The net-tools library includes ifconfig
and netstat –rn
. To replace those tools, Linux uses the iproute library, which includes a set of replacement commands and functions, many performed with the ip command and some parameters.
Note that it lists the Ethernet MAC and IPv4 addresses, along with the subnet mask, similar to the macOS version of the command. However, on Linux, it also shows some interface counters.
The bottom of the example shows the command from the iproute package that replaces ifconfig, namely the ip address. Note that it shows the same basic addressing information, just with the subnet mask shown in prefix notation rather than in dotted decimal.
Linux has long supported the netstat -rn command as well, as part of the net-tools package. . The output lists a default route, but with a style that shows the destination as 0.0.0.0. As usual, the default route points to the default gateway as learned with DHCP: 192.168.1.1. It also lists a route to the local subnet (192.168.1.0 as highlighted toward the bottom of the output).