Most people have heard of Nmap, the ubiquitous portscanner and more, available at . Recently, a new version of Nmap was released with a new and frequently requested feature - version scanning.
Nmap-3.45 and later have the ability to test out open ports and discover what version of software is running. The older versions could only tell you what port was open, and what that port is traditionally used for. While this is a good start, it is common for people to run services on non-standard ports for a variety of reasons:
source:
hackinglinuxexposed