WSL部署的FreeSWITCH 1.10.3 SIP用户注册失败问题求助
本地IP注册报错解决方案
- 报错核心原因是FreeSWITCH未将你的本地IP
192.168.1.34识别为合法的SIP域,你配置的3333用户归属于默认的default域,需要给该域添加IP别名:- 打开配置文件
conf/directory/default.xml - 在
domain标签块内添加配置:<param name="alias" value="192.168.1.34"/> - 如果你多网卡有多个本地IP,也可以直接设置为
<param name="alias" value="$${local_ip_v4}"/>让FreeSWITCH自动读取本地IP作为别名
- 打开配置文件
- 验证3333用户配置有效性:检查
conf/directory/default/3333.xml中,根标签为<user id="3333">,且password参数配置正确无语法错误。
公网IP注册报错解决方案
- WSL默认采用NAT网络模式,无法直接暴露端口到公网,需要先做两层端口映射:
- 宿主机Windows系统执行端口转发,将公网访问的5060(SIP信令,UDP+TCP)、16384-32768(RTP媒体流,UDP)端口转发到WSL实例的对应内网IP端口
- 调整FreeSWITCH NAT适配配置:打开
conf/sip_profiles/internal.xml,修改如下参数:<param name="ext-sip-ip" value="你的公网IP"/> <param name="ext-rtp-ip" value="你的公网IP"/> <param name="aggressive-nat-detection" value="true"/> - 确认云服务商安全组、Windows防火墙、WSL内Ubuntu的ufw防火墙全部放通上述端口
配置生效验证
所有修改完成后,执行命令重载配置:fs_cli -x "reloadxml",重启SIP客户端后重新发起注册即可。
附配置截图:
内容的提问来源于stack exchange,提问作者Andrea Mason
相关产品推荐
相关产品推荐

