Kamailio como registro e relé SIP somente TCP

1

Eu tenho uma configuração bastante complicada na qual gostaria de executar um servidor SIP. Em geral, quero executar um servidor SIP Kamailio somente IPv6 na rede interna e ter clientes SIP externos capazes de fazer chamadas para o interior através da rede somente IPv4.

Esta é a configuração:

OproblemaéquenãoconsigoacessarnenhumdispositivonaoutraredepeloIPv4.AredecomoservidorKamailiotemconectividadeIPv6,emborapossaseracessadadeoutrasredesIPv6naInternet.

Noentanto,queromeconectaraoSIP-servercomumSIP-AppnoAndroid(especificamenteMizudroid,masoquequerquefuncione,atémesmooclienteAndroidnativoébomparamim)defora-de-estrada-escritório.Infelizmente,aredemóveléapenasIPv4etambémamaioriadasredesWiFisãoapenasIPv4.

Euencontreiumprovedordeserviços,embora( link ), que pode atuar como um gateway IPv4-para-IPv6 em portas específicas. Ou seja, se você se conectar a este serviço no portmapper.myonlineportal.net:12345, ele encaminhará esse tráfego para [seu-ipv6]: 5060 (5060 pode ser o que você quiser, mas 5060 é para SIP). A desvantagem é que ele só oferece isso para conexões TCP.

De qualquer forma, eu configurei o Kamailio-server, configurei-o e os clientes dentro da rede IPv6 podem ligar e também falar uns com os outros. O problema é com os clientes de fora. Eles podem se conectar ao Kamailio e também podem ligar para alguém do lado de dentro. Mas depois de atender a chamada, a conexão não é bem-sucedida e a chamada é interrompida. Além disso, chamar de dentro para fora não funciona, a mensagem de erro do softphone "PhonerLite" é "477: Infelizmente ocorreu um erro ao enviar para o próximo salto (477 / SL)".

Infelizmente, não estou muito familiarizado com o protocolo SIP. Pelo que entendi, Kamailio é apenas um "corretor" que diz ao Caller1 como chegar ao Caller2. O problema aqui pode ser que há apenas uma conexão de uma porta para o servidor Kamailio através do portmapper. Mesmo que eu configurei todos os dispositivos para usar o TCP como protocolo de transporte.

Eu estou querendo saber se isso é de todo possível? Estou pensando que poderia funcionar se o Kamailio não fosse apenas o registrador, mas também atuasse como um relay / proxy? Portanto, chamadas de fora não devem ser dev-to-dev, mas sim dev-kamailio-dev. Não importa para o meu aplicativo se houver um atraso devido ao uso do TCP. Além disso, usar um serviço externo não é uma opção, porque eventualmente o servidor Kamailio seria integrado ao telefone fixo.

Eu ficaria feliz em ouvir também sobre outras sugestões. Lembre-se de que o servidor e o roteador Kamailio também podem ser acessados por meio de IPv6 na Internet, enquanto o dispositivo móvel possui uma conexão somente IPv4!

Qualquer ajuda é muito apreciada!

    
por TJJ 27.04.2016 / 16:28

0 respostas

Tags