kamailio 云部署 配置NAT

Posted chenzhenqi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kamailio 云部署 配置NAT相关的知识,希望对你有一定的参考价值。

公有云配置NAT

第一步:将内网ip广播至公网ip,编辑/etc/kamailio/kamailio.cfg文件,搜索listen,添加如下配置

# listen=udp:10.0.0.10:5060
listen=0.0.0.0:5060 advertise PUBLIC_IP:5060

第二部:绑定NAT。这一步有坑,请注意!!

1. 根据kamailio文档,需要在/etc/kamailio/kamailio.cfg添加#!define WITH_NAT,如下:

#!KAMAILIO
#!define WITH_NAT

  2. 搜索WITH_NAT你会看到kamailio的介绍,安装rtpproxy 启动时用 -l 参数传递 you public ip。要是按照这个操作就呵呵了,当你invite时,会在公网ip和内网ip之间循环route,知道too many hops!!! 因为当前版本的rtpproxy缺少了一个公有云部署的必要的功能,使用广播地址。

# *** To enable nat traversal execute:
#     - define WITH_NAT
#     - install RTPProxy: http://www.rtpproxy.org
#     - start RTPProxy:
#        rtpproxy -l _your_public_ip_ -s udp:localhost:7722
#     - option for NAT SIP OPTIONS keepalives: WITH_NATSIPPING

  3. 很幸运有人修复了这个问题,你可以自己编译rtpproxy,如下:

#下载源码
wget https://github.com/miconda/rtpproxy/archive/master.zip

# 解压并编译

unzip master.zip

cd rtpproxy-master

./configure 
make
make install

#启动 rtpproxy
./rtpproxy -A PUBLIC_IP -l PRIVADE_IP -d INFO -s udp:*:7722

 

以上是关于kamailio 云部署 配置NAT的主要内容,如果未能解决你的问题,请参考以下文章

阿里云部署freeswitch的公网ip问题,nat穿越问题

阿里云NAT网关配置

LVS负载均衡之LVS-NAT实例部署(配置篇)

开源SIP服务器Kamailio/OpenSIPS的三种信令负载均衡算法优化详解以及测试讨论和基于SBC信令语音均衡负载功能实现

LVS负载均衡实战部署(NAT模式)

LVS负载均衡实战部署(NAT模式)