将POTS线路转为VoIP并实现跨VPN站点分机同步振铃及通话需求求助
低成本跨站点模拟电话延伸解决方案(基于pfSense环境)
先帮你梳理下核心需求:Site1的模拟电话来电时,Site2的PC/外接电话能接听;Site2外呼时,流量走Site1的模拟线路出局,双站点都在pfSense防火墙后,支持VPN且追求低成本。下面是实操性很强的分步方案:
1. 先搭建Site1-Site2的站点到站点VPN(零成本,用pfSense自带功能)
两个站点都用pfSense,直接用内置的IPsec或OpenVPN建立双向隧道,这是跨站点通信的基础:
- 登录pfSense后台,进入VPN菜单选择IPsec(配置更简单,适配站点到站点场景),创建隧道并把两个站点的局域网段加入允许访问列表
- 测试连通性:在Site2的PC上ping Site1的内网设备IP,能通就说明VPN配置成功
2. Site1部署模拟电话适配器(ATA)—— 低成本核心转换设备
入手一款入门级ATA(比如Grandstream HT801,几十美元性价比拉满),它负责把模拟电话线信号转换成IP信号:
- 把Site1的模拟电话线插入ATA的FXO口(注意是FXO接外线,FXS是接座机的,别插反)
- 将ATA接入Site1局域网,给它设置静态IP(或者在pfSense里绑定固定DHCP地址,避免IP变动导致后续配置失效)
- 两种配置方向可选:
- 简易版:直接开启ATA的远程分机功能,允许Site2的设备注册到这个ATA,不用额外搭建PBX
- 灵活版:在Site1的闲置PC/虚拟机上安装FreePBX(开源免费),把ATA注册到FreePBX作为外线,后续扩展分机、设置来电转接更方便
3. Site2端配置接听/外呼工具
方案A:PC端软电话(零额外成本)
- 下载免费软电话客户端(比如Zoiper、Linphone)安装到Site2的PC上
- 配置软电话注册到Site1的ATA/FreePBX的SIP账号:注册服务器填Site1设备的VPN内网IP,账号密码提前在ATA/FreePBX里设置好
- 完成后,Site1的模拟电话来电时软电话会振铃,直接接听即可;外呼时流量会通过VPN路由到Site1的ATA,再走模拟线路出局
方案B:Site2外接实体电话(低成本)
如果想用实体电话,再买一个带FXS端口的入门ATA(同型号也可以),接在Site2局域网里:
- 把实体电话插入ATA的FXS口
- 配置这个ATA注册到Site1的ATA/FreePBX的SIP账号,原理和软电话一致,来电时实体电话会振铃,外呼走Site1线路
4. pfSense防火墙规则适配
确保VPN和SIP流量能正常通行:
- 进入pfSense的Firewall > Rules,给VPN接口添加允许SIP(UDP 5060)和RTP媒体流量(一般是UDP 10000-20000)的规则
- 如果用FreePBX,还要允许Site2设备访问FreePBX的管理端口(80/443)和SIP相关端口
关键注意事项
- 确保两个站点的网络稳定,pfSense的IPsec隧道默认会自动重连,不用太担心中断问题
- SIP和RTP流量对延迟敏感,尽量选择带宽稳定的线路,避免通话卡顿
- 定期给ATA升级固件,避免兼容性bug
内容的提问来源于stack exchange,提问作者GizzyBear
相关产品推荐
相关产品推荐

