我在公共 ip xx.xx.xx.xx 和专用 Freeswitch 服务器 192.168.1.2、专用 MySql 数据库服务器 192.168.1.3 上设置了专用 Opensips 服务器。我的路由器在 192.168.1.1 上。我还从 192.168.1.5 的提供商那里得到了一个 sip 中继线。所有服务器都在 Debian 8 上。
除了拥有自己的网关 xxx.xx.xx.xy 的 opensips 服务器外,我已将我的网关设置为 192.168.1.5。
Opensips 服务器有 2 个以太网端口 eth0 和 eth1。我已将 eth1 设置为 192.168.1.4 如何启用 Opensips 服务器公共 ip 以访问本地 Mysql 服务器并将调用发送到 Freeswitch 服务器。
我启用数据包转发:/etc/sysctl.conf net.ipv4.ip_forward=1
我在 opensips 上的 iptables 是这样的:
iptables 规则:
iptables -F
iptables -t nat -F
iptables -P 输入接受
iptables -P 输出接受
iptables -P 转发接受
iptables -A 输入 -i lo -j 接受
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth1 -s 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
谢谢。