Verifying IP Configuration on Windows
To identify what IP configuration is set on a Windows PC, the simplest method is to use the command "ipconfig /all" within Command Prompt or PowerShell. We specify the "/all" flag to ensure that all network devices attached to the PC are displayed in the output.
Let's explore some of the details shown in the above screenshot.
There are lots of commands available to run on a Windows PC to confirm how the NIC is configured, such as:
-
ping | used to test reachability to another IP address either inside or outside the local subnet
-
tracert | used to check the path that packets take across a network, also useful for identifying latency at certain hops
-
netstat -rn | displays the PC's routing table
-
netstat | lists the current TCP/UDP sessions created by the PC with source and destination ports and IP addresses
-
netsh interface ipv6 show | lists some of the available commands to confirm IPv6 configuration (such as multicast groups etc)
Verifying IP Configuration on Linux
As with Windows there are specific commands to run on different operating systems. For Linux we can use the commands "ip address" or "ifconfig". To show the default gateway we need to run the "ip route" command. See below:
networkingbasicsvm2@networkingbasicsvm2:~$ ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.2.15 netmask 255.255.255.0 broadcast 10.0.2.255
ether 08:00:27:d9:0d:5b txqueuelen 1000 (Ethernet)
RX packets 232 bytes 223788 (223.7 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 237 bytes 23817 (23.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 83 bytes 8465 (8.4 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 83 bytes 8465 (8.4 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
networkingbasicsvm2@networkingbasicsvm2:~$ ip address
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:d9:0d:5b brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic noprefixroute enp0s3
valid_lft 86334sec preferred_lft 86334sec
networkingbasicsvm2@networkingbasicsvm2:~$ ip route
default via 10.0.2.2 dev enp0s3 proto dhcp metric 100
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100
169.254.0.0/16 dev enp0s3 scope link metric 1000
Please see a below list of useful commands for network configuration checks on Linux:
-
ping | used to test reachability to another IP address either inside or outside the local subnet
-
traceroute | used to check the path that packets take across a network, also useful for identifying latency at certain hops (may need to be installed via apt)
-
ip route | displays the PC's routing table
-
netstat | lists the current TCP/UDP sessions created by the PC with source and destination ports and IP addresses