8 Useful network troubleshooting tools
Good evening folks! This evening I am going through 8 command line tools for you can use to diagnose and resolve many network-related issues. Are you new to networking like me and need a helping hand with troubleshooting? This post goes through 8 command line tools and what purpose their serve, to get you started with network troubleshooting in Windows.
First off, the Event Viewer. This collects information about system activities into event logs, for instance the System log that stores information about IP conflicts and and network-related service failures.
The Event Viewer can be found by pressing Start and start searching for “Event Viewer” and it looks like this on startup. (System logs can be found in the side menu under Windows Logs > System)
Windows Network Diagnostics
Next up is the Windows Network Diagnostics (WND). This tool helps you diagnose and repair network issues. The WND presents you with possible descriptions of issues and suggests potential solution, it doesn’t always come with a reasonable result, but it is a great tool to get started.
To access this tool you can either go to Control Panel > All Control Panel Items > Network and Sharing Center > Then click Troubleshoot Problems or
Hit Start and type in Identify or repair network problems.
Two down six to go, the mighty
Ipconfig. This is a handy Command-Line tool to display current TCP/IP configuration of your Windows device. With this command you can use the following parameters, that is useful for getting your computer reconnected to the internet or the local LAN Network. This is something you need to do often in your IT career, so be prepared to use this a lot.
ipconfig /all This provides a quick look at up of detailed configuration settings.
ipconfig/ release This releases the leased IP configuration back to the DHCP.
ipconfig /renew This renews the IP configuration for the network adapters.
ipconfig /displaydns This reviews the DNS resolver cache.
ipconfig /flushdns This cleanup the DNS resolver cache entries.
ipconfig /registerdns This register or update the client’s host name with the DNS server.
The well known
Ping command. A tool for checking connectivity to a target computer by sending a series of network packets to the target system.
Be aware that many firewalls block the ICMP packets
ping uses, so you might receive a false negative response from the target computer. If you are building a test environment like me and have issues with verifying connectivity, make sure to enable the
ICMP protocols in the firewall on your devices.
This simple and relatively straight forward setting has caused some late nights and frustration. A tip to avoid headache and frustration – enable the firewall rules with the title
File and Printer Sharing (Echo Request - ICMPv4-Out) and try again. This allows the ICMP protocol to send error messages and operational information indications.
This command is great for diagnose routing-problems, by determining the path that a packet take to a specified computer system. Comparing it to a web shop order; when you order from a web shop and the order is sent, you get a tracking number. This number can be used to lookup and track the steps from the sending state and all the way until the delivery state.
Tracert work the same way, and therefore a great tool for diagnose routing-problems.
NSlookup meaning “Name Server lookup” is a tool used for querying the Domain Name System (DNS) and to troubleshoot name resolution, and to obtain domain name or IP address mapping, or other specific DNS records.
This command also traces network route similar to how the
tracert command, but provides more statistics on the hops through the network.
Bonus – PowerShell
A little bonus in the end of the post. PowerShell provides similar cmdlets tools commands (nope, not a typo. Powershell uses the term cmdlets – which is specialized .NET classes) you can use to troubleshoot and test network connectivity equivalent to the commands above, the cmdlets may not be as familiar or as concise, but on the other hand PowerShell have relatively descriptive names and is fairly easy to remember.
Get-NetIPConfiguration**- Pretty must same as IPconfig
Test-NetConnection**- Behaves in a similar way as Ping
Test-NetConnection [www.example.com](http://www.example.com/) -Traceroute– Same as Tracert
Resolve-DnsName****- Similar as
NSlookup, mostly used to query DNS records and name resolution.
I personally preferer the PowerShell cmdlet over the good old Command Prompt commands, because of the predictable verb-noun approach. Though, CMD commands also works in PowerShell.
Thank you for reading, hope you learned something, refreshed your memory, or got a tip or two. If you have any questions or feedback feel free to leave a comment or contact me.