从0到1打造自己的VOIP网络电话系统(基于FreePBX) 您所在的位置:网站首页 虚拟电话拨打软件配置怎么设置 从0到1打造自己的VOIP网络电话系统(基于FreePBX)

从0到1打造自己的VOIP网络电话系统(基于FreePBX)

2024-07-14 16:57| 来源: 网络整理| 查看: 265

现在可以尝试通过外网访问了,一般常见的有三种外网访问情况。

如果你有公网IP,那么这是最省事的,可惜大多数人没有。

用动态域名进行访问

没有路由器权限或者路由器没有被分配公网IP,这种情况只能内网穿透。

我没有公网IP,所以1不行,本来我家里的路由器也没有被分配公网IP,因为路由器连接电信的光猫使用DHCP联网的,公网IP被分配到了电信的光猫上了,所以选择3,进行内网穿透,使用ssh反向代理,但是发现ssh可以转发TCP,对于UDP就无能为力了,于是打算把SIP的协议改成TCP,但是发现通信用的RTP只能使用UDP,没法改。因此,又琢磨着使用IAX,结果发现IAX好像也改不成UDP,或许是我的姿势不对。不得已只能试试2了,本来想破解电信的光猫,然后将其改成桥接模式,让路由器进行PPOE拨号上网,看了很多破解教程,发现网上流传的漏洞都被堵死了,至此打算放弃了,最后抱着试试看的心态,联系了电信客服,客服说已为我报修,之后会有工程师联系我,过了不久,工程师给我来电了,我说要把光猫改成桥接模式,工程师很爽快的答应了,立马就远程改好了,叫我过20分钟重启,重启之后果然变成了桥接模式。接着我在路由器中使用PPPOE进行拨号上网,路由器就被分配了公网IP,真是踏破铁鞋无觅处,得来全不费功夫:)

使用动态域名进行访问

先拿到路由器被分配的公网IP,可以直接在路由器中查看,或者在路由器下面的树莓派中通过终端:curl ip.cn查看该IP。

打开freepbx的web界面,登录管理员界面,Settings->Asterisk SIP Settings中Detect Network Settings,自动检测IP,应该和上一步中拿到的IP相同,再检查下面的内网地址是否正确。 Screen Shot 2017-07-07 at 11.53.37.png 然后去Chan SIP Settingstab页下面的NAT设置Static IP ,默认值就是之前检测到的结果,如果没错就不用改,然后submit,applyconfig。 Screen Shot 2017-07-07 at 11.55.13.png

再到路由器中设置端口转发,因为那个公网IP是路由器的地址。每种路由器的设置都不同,请自行摸索一下,其实很简单,就是把路由器的5060端口转发到树莓派的5060端口,协议最好选择TCP/UDP,还有10001~20000端口也要转发到树莓派的10001~20000,这个是RTP通信端口可以选择转发UDP.这里没必要转发一万个端口,一次通信只需要4个端口,所以转4个端口10001~10004用来测试就可以了。

现在去客户端中把Domain改成公网IP,应该能够拨通分机。

用手机的4G网络再试一次,还是正常那就通过了。

因为这个IP是电信运营商动态分配的,随时都有可能变化,所以需要不断检测当前IP地址,然后通过DNS服务更改解析。最简单的做法可以直接用花生壳等服务商的服务,不过我不喜欢这些服务商,打算自己写个脚本来实现,这样既有成就感又能完全掌握,用花生壳的客户端给我一种感觉:总有***民想害朕。

云计算井喷式的发展,我等小P民也能美美的用上了,去阿里云买个便宜的ip地址和dns云解析一年也才50多块,阿里云的云解析的TTL最快达到1s。 Screen Shot 2017-07-07 at 12.02.27.png

树莓派默认已经安装了python环境,那就用python吧,调用阿里云的sdk就可以了,分分钟的事情。脚本参考连接,原作者已经写得很好了,只是有一个异常情况作者没有遇到,那就是ip.cn宕机了,所以我在脚本中简单处理了一下这种情况。 在树莓派中,新建vim aliyun_ddns.py,把下面的代码复制进去,部分地方根据实际情况修改。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有