The most useful network commands, of course, depends on what kind of network you are working on. There are two main families of networks, and we will deal with both of those here. The first family, the Unix or Linux family, is the oldest, with its origins back in the early days of computing, when the Unix system rose to dominance among all network operating systems. The second family, the Windows family, is in wide use these days as many network computers run a Windows-based operating system. Both have similar functions available to them, but the network commands that achieve these ends are different.
One of the network commands that many people may be aware of is the ping command. Both use the same basic syntax, that of ping [destination_address], but the options available to each are different. Ping is an easy way to see how long it takes one computer to communicate with another, which can be used for a number of different troubleshooting purposes, and so is one of the first network commands people learn when debugging networks. Options available include setting a manual timeout, setting a larger buffer size to send, and timestamping each hop as it is made.
Traceroute is another of the popular network commands, as it shows what the route a packet is taking from a source to a destination. This can be interesting to see, to get an idea how much a network connection travels, but can also be useful for finding where a connection is slowing down, as each host as it is listed also shows how long the packet took getting there. Traceroute is part of the core suite of network commands available to both Unix and Windows systems, although the options available for each to differ slightly.
When you’re logged into a system, especially a Unix system with many other users, one of the network commands most used is the finger command. Using the syntax finger [username] results in a chunk of information being displayed about another user logged into the system. This may include their real name, their contact information, their email address, and any additional information they have specified in a document in their user directory. Remotely the command can often be utilized by using the syntax finger [username]@[host].
The ssh command allows you to make a secured connection from the host you’re logged into to another computer. This may be used either from a local computer, through a shell, or while logged into another host to work through that computer. Many systems also allow for the use of ssh-keygen, which generates a number of authentication keys for the ssh protocol.
Many systems also allow for a whois command, which can be a useful and easy way to acquire information about a domain name. The whois command may return various information, but most people use it to find the IP address of the host that the domain name resolves to. The whois command may also be set up to query the whois database in order to return more comprehensive information about the domain, including when it was registered, and the contact information of whoever registered it, as well as technical and administrative contacts.