whatportis: un comando para buscar a qué número de puerto corresponde un servicio y viceversa

¿Cuantas veces has buscado en Internet a qué servicio estándar corresponde un puerto TCP/UDP o viceversa? Hazlo como un pro desde tu consola con la utilidad whatportis.

Instalación:

$ pip install whatportis

Uso:

Buscar qué puerto está asociado con un servicio:

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

O a la inversa, qué servicio está asociado con un número de puerto determinado:

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

Además, podemos buscar patrones sin conocer exactamente el nombre simplemente añadiendo la opción --like:
$ 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 |
+----------------+-------+----------+-----------------------------------+
 

Seguro que pensáis por qué no usar simplemente "grep /etc/services"... La razón es porque es un comando portable con un formato más agradable. Utiliza la web de Iana.org para obtener una listado oficial de puertos (ports.db) que próximamente podremos forzar a actualizar con update.

Fuente: https://github.com/ncrocfer/whatportis

Comentarios