FoneBRIDGE, soluciones VoIP de alta disponibilidad

FoneBRIDGE2 de Redfone provee a sistemas Asterisk VoIP de interfaces digitales E1/T1. Como concepto general, diremos que encapsula las tramas TDM en paquetes ethernet utilizando protocolo TDMoE. Asterisk detectará FoneBRIDGE2 como tarjetería estándar de comunicaciones y no como un gateway VoIP, por tanto se asume que el nivel de configuración y administración del mismo pasa a ser de menor complejidad.

¿Que es TDMoE para la VoIP?

Es un protocolo de transporte que tiene como cometido la transmisión de datos proveniente de equipamientos de telefonía a través de la red Ethernet. Trabaja en capa 2 de OSI (a nivel MAC).

Instalación y configuración del equipo Redfone

Escenario

  • Servidor x86_64 con Asterisk 1.8.19.
  • FoneBRIDGE2 E1/T1 750-5000 Quad port

Como práctica para analizar mas en detalle este tipo de arquitecturas VoIP y de sus posibles alternativas, configuraremos un sistema FoneBRIDGE2 para dar salida a la PSTN a todos nuestros usuarios finales a través de 4 primarios en configuración europea E1.

Disponemos de un servidor Asterisk VoIP con una tarjeta de red de 4 puertos, con lo cual destinaremos una de ellas para interconectar el FoneBRIDGE2 con nuestro servidor (interfaz em4) para todo el trafico TDMoE. Esta interconexión podemos hacerla mediante cable recto o cruzado, es indiferente. Por otro lado, a través de la interfaz em1, daremos salida al ámbito local de la red e Internet.

Nuestro modelo FoneBRIDGE2 dispone de dos conexiones ethernet nombradas con FB1 y FB2. Ambas interfaces de red vienen de fabrica configuradas con las direcciones 192.168.0.254 y 192.168.0.253. Por tanto, nuestro primer paso será realizar la configuración pertinente en nuestra interfaz de red em4 para incluirlo en esta misma red.

Configuración de red

#> cd /etc/sysconfig/network-scripts

Creamos la configuración de nuestra interfaz de red em4 con la dirección 192.168.1.34

#> vim ifcfg-em4

DEVICE="em4"
BOOTPROTO=none
HWADDR="00:25:64:F8:AF:48"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
#UUID="4665ad5a-f21c-4aba-bed6-6b94011ee5c5"
IPADDR=192.168.1.34
PREFIX=24
NETMASK=255.255.255.0
NAME="System em4"
IPV6INIT=no
USERCTL=no

Reiniciamos el servicio de red para que nuestra interfaz levante con los nuevos valores.

#> /etc/init.d/network restart

A partir de aquí, ya disponemos de la comunicación entre nuestro foneBRIDGE2 y servidor Asterisk VoIP.

Instalación del software

A continuación procedemos a la instalación del software.

Básicamente son las librerías del fobreBRIDGE2 (libfb), una utilidad para la administración y monitorización del hardware (Fonulator) y dependencias.

Dejo los enlaces donde podemos descargar los rpm necesarios.

#> yum install libpcap-0.9.4-15.el5.x86_64.rpm
#> yum install libargtable2-2.12-2.el6.rf.x86_64.rpm
#> yum install libfb-2.0.0-0.x86_64.rpm
#> yum install fonulator-2.0.1-0.1.x86_64.rpm

Para cerciorarnos de que la instalación de Fonulator ha sido realizada con éxito, debemos ejecutar el siguiente comando:

#> fonulator –V

Fonulator es una herramienta que nos proporciona una capa para la administración y configuración de nuestro hardware FoneBRIDGE2. Con la opción -h o –help podemos observar el tipo de operaciones que permite (alguna de ellas la utilizaremos próximamente).

#> fonulator --help

Fichero de configuración de REDFONE

Este fichero de configuración contiene todos los parámetros de configuración de nuestro equipo foneBRIDGE2.

La siguiente parametrización hace referencia a las 4 interfaces E1. Es una configuración estándar: css,hdb3,crc4.

Cabe destacar, que el SPAN1 hará de maestro y llevará el sincronismo del grupo completo y Asterisk VoIP.

#> vim  /etc/redfone.conf

[globals]
 # IP-address of the IP Configuration port
 # Factory defaults are; FB1=192.168.1.254 FB2=192.168.1.253
 fb=192.168.1.254
 
 # Which port to use for TDMoE Traffic (1 or 2)
 port=1
 
 # Which Asterisk server destination MAC address for TDMoE Traffic?
 server=00:25:64:F8:AF:48
 
 # Determines which span is to derive timing from telco
 priorities=0,1,2,3
 
# E1 PRI SPAN WITH CRC4
[span1]
 framing=ccs
 encoding=hdb3
 crc4
 master
[span2]
 framing=ccs
 encoding=hdb3
 crc4
 slave
[span3]
 framing=ccs
 encoding=hdb3
 crc4
 slave
[span4]
 framing=ccs
 encoding=hdb3
 crc4
 slave

Una vez definido el fichero /etc/redfone.conf, únicamente nos queda cargarlo:

#> fonulator /etc/redfone.conf

Posteriormente, escribimos los cambios y reiniciamos

#> fonulator --write-config
#> fonulator --reboot

Configuración de los drivers de DAHDI en system.conf

En este caso vamos a proporcionar la configuración de 4 spans dinámicos en E1. Hay soporte a partir de la versión 2.3 de DAHDI,  por tanto es recomendable recompilar DAHDI a esta versión

Deberemos de cargar los siguientes módulos en el arranque de DAHDI. Para ello, incluimos en el fichero /etc/dahdi/modules las siguientes líneas.

dahdi_dynamic_ethmf
dahdi_dynamic

A continuación la parametrización del fichero system.conf

La MAC que aparece en la definición de los canales dinámicos, pertenece al puerto FB1 de nuestro equipo foneBRIDGE2.

#> cd /etc/dahdi/ && mv system.conf system.conf.ori
#> vim system.conf

loadzone = es
defaultzone = es


dynamic=ethmf,em4/00:50:c2:65:d8:26/0,31,1
bchan=32-46
dchan=47
bchan=48-62
alaw=32-62 dynamic=ethmf,em4/00:50:c2:65:d8:26/1,31,0
bchan=63-77
dchan=78
bchan=79-93
alaw=63-93 dynamic=ethmf,em4/00:50:c2:65:d8:26/2,31,0
bchan=94-108
dchan=109
bchan=110-124
alaw=94-124 dynamic=ethmf,em4/00:50:c2:65:d8:26/3,31,0
bchan=125-139
dchan=140
bchan=141-155
alaw=125-155

Configuración chan_dahdi.conf en Asterisk

Por último, la configuración de los canales en Asterisk VoIP en el fichero /etc/asterisk/dahdi.conf

[trunkgroups]
[channels]
group=2
usecallerid=yes
echocancel=yes
switchtype=euroisdn
signalling=pri_cpe
channel=>32-46,48-62
channel=>63-77,79-93
channel=>94-108,110-124
channel=>125-139,141-155

Reiniciamos el servicio DAHDI

#> /etc/init.d/dahdi restart

Comprobamos que nuestro servidor Asterisk VoIP esta viendo correctamente todos spans dinámicos.

#> asterisk -rx "dahdi show status"

Como curiosidad comentaré, que durante las primeras pruebas de este equipo, el audio reflejaba un ruido blanco bastante molesto. Después de activar y desactivar el DSP se comprueba que todo funciona con normalidad. Por el resto, me parece un equipo ideal para soluciones de alta disponibilidad a costes realmente buenos.

2 comentarios en «FoneBRIDGE, soluciones VoIP de alta disponibilidad»

  1. muy buen tutorial, pero podes creer que el repositorio de RPM’s esta dado de baja y este rpm no lo encuentro por ningun lado
    libfb-2.0.0-0.x86_64.rpm

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.