
Hace unos días @miconda publicó una herramienta que, aunque sencilla y tonta, cumple muy bien su cometido, y es que SIPExer envía un paquete OPTIONS al servidor que quieras, obteniendo la respuesta devuelta por el servidor lo que nos permitirá saber rápidamente si el servidor está vivo o no.
Por supuesto, existen muchas formas de hacer esto sin esta herramienta, pero SIPExer además permite otras funciones como simular un REGISTER, enviar un MESSAGE o un INVITE y todo desde la línea de comandos, permitiéndonos crear scripts de control y gestión muy fácilmente.
A mí personalmente me ha conquistado, porque aunque existen herramientas similares, esta herramienta es mucho más sencilla de manejar y requiere menos esfuerzo para generar una llamada autentificada.
Así que para todos aquellos que trabajáis con servidores VoIP, os animo a que la probéis y veáis lo interesante que es SIPExer.
# sipexer sip.sinologic.net
[info] [sipexer.go:1260] main.SIPExerDialogLoop(): local socket address: 150.214.57.7:34116 (udp)
[info] [sipexer.go:1261] main.SIPExerDialogLoop(): local via address: 150.214.57.7:34116
[info] [sipexer.go:1262] main.SIPExerDialogLoop(): sending to udp 150.214.57.7:5060: [[---
OPTIONS sip:sip.sinologic.net:5060 SIP/2.0
Via: SIP/2.0/UDP 150.214.57.7:34116;rport;branch=z9hG4bKSG.d5b5aa0d-b693-489d-a692-118f752a7f05
From: <sip:alice@localhost>;tag=7b6f236d-2b85-4095-9ea8-1f74c2782692
To: <sip:bob@localhost>
Call-ID: 05301d35-38ef-4518-b6fb-e89097fcef68
CSeq: 415636 OPTIONS
Date: Sun, 20 Feb 2022 22:48:11 CET
User-Agent: SIPExer v1.0.0
Content-Length: 0
[info] [sipexer.go:1264] main.SIPExerDialogLoop(): ---]]
[info] [sipexer.go:1315] main.SIPExerDialogLoop(): response-received: from=150.214.57.7:5060 bytes=377 data=[[---
SIP/2.0 200 Keepalive
Via: SIP/2.0/UDP 150.214.57.7:34116;rport=34116;branch=z9hG4bKSG.d5b5aa0d-b693-489d-a692-118f752a7f05;received=150.214.57.7
From: <sip:alice@localhost>;tag=7b6f236d-2b85-4095-9ea8-1f74c2782692
To: <sip:bob@localhost>;tag=d3b1dc2b71424704ca08058d736266d9.6fa3dfd4
Call-ID: 05301d35-38ef-4518-b6fb-e89097fcef68
CSeq: 415636 OPTIONS
Content-Length: 0
[info] [sipexer.go:1317] main.SIPExerDialogLoop(): ---]]
Aquí podéis descargarla y probarla: https://github.com/miconda/sipexer












Uno de los grandes problemas que nos encontramos al conectar un sistema a la red (Internet) es sin duda, los distintos ataques a los que tenemos que hacer frente. Por desgracia, no hay una persona como tal jugando con direcciones IP buscando a alguien a quien atacar, eso hoy día ha sido delegado a un ejército de sistemas «zombies» repartidos por todo el globo de forma que los ataques sean distribuidos, automatizados, rápidos y efectivos.
Todo profesional que se dedique a redes y trabaje con VoIP, en algún momento determinado necesita una herramientas que le permita conocer qué envía y recibe para poder analizarlo y detectar dónde está el error. Está claro que este tipo de herramientas son «sniffers» especiales que capturan tráfico y como tal necesitamos, o bien ejecutarlos en un sistema conectado a un «puerto mirror» del switch por donde pasa el tráfico que queremos capturar, o bien en el propio sistema que queremos capturar.
En mi humilde opinión, cuando alguien trabaja con servidores de comunicaciones, le interesa que todos los recursos se utilicen o estén orientados y disponibles para satisfacer las necesidades de la tarea dedicada que tiene que realizar. Por ese motivo, un servidor dedicado que ofrece servicio web, correo o incluso un Asterisk o un Kamailio, no es habitual instalar un entorno gráfico.