الأربعاء، 3 فبراير 2016

Whatportis: A Command To Search Port Names And Numbers

A Command To Search Port Names And Numbers


Whatportis:  A Command To Search Port Names And Numbers


It often happens that we need to find the default port number for a specific service, or what service is listening on a given port.


Usage

This tool allows you to find what port is associated with a service :

$ whatportis redis
+-------+------+----------+---------------------------------------+
| Name | Port | Protocol | Description |
+-------+------+----------+---------------------------------------+
| redis | 6379 | tcp | An advanced key-value cache and store |
+-------+------+----------+---------------------------------------+

Or, conversely, what service is associated with a port number :

$ whatportis 5432
+------------+------+----------+---------------------+
| Name | Port | Protocol | Description |
+------------+------+----------+---------------------+
| postgresql | 5432 | tcp | PostgreSQL Database |
| postgresql | 5432 | udp | PostgreSQL Database |
+------------+------+----------+---------------------+

Installation

$ pip install whatportis

Notes

You can search a pattern without knowing the exact name by adding the --like option :

$ whatportis mysql --like
+----------------+-------+----------+-----------------------------------+
| Name | Port | Protocol | Description |
+----------------+-------+----------+-----------------------------------+
| mysql-cluster | 1186 | tcp | MySQL Cluster Manager |
| mysql-cluster | 1186 | udp | MySQL Cluster Manager |
| mysql-cm-agent | 1862 | tcp | MySQL Cluster Manager Agent |
| mysql-cm-agent | 1862 | udp | MySQL Cluster Manager Agent |
| mysql-im | 2273 | tcp | MySQL Instance Manager |
| mysql-im | 2273 | udp | MySQL Instance Manager |
| mysql | 3306 | tcp | MySQL |
| mysql | 3306 | udp | MySQL |
| mysql-proxy | 6446 | tcp | MySQL Proxy |
| mysql-proxy | 6446 | udp | MySQL Proxy |
| mysqlx | 33060 | tcp | MySQL Database Extended Interface |
+----------------+-------+----------+-----------------------------------+

"Why not use grep <port> /etc/services" ? Simply because I want a portable command that display the output in a nice format (a pretty table).

The tool uses the Iana.org website to get the official list of ports. A private script has been created to fetch regularly the website and update the ports.db file. For this reason, an update command will be created in a future version.

Download

ليست هناك تعليقات:

إرسال تعليق