You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MikroTik双PPPoE+WireGuard环境下SIP Trunk路由配置求助

MikroTik双PPPoE+WireGuard环境下SIP Trunk路由配置求助

嗨,这个场景我之前处理过类似的,给你一步步拆解配置思路和具体命令,应该能解决你的问题~

首先明确核心目标:让来自运营商xxx.xxx.16.0/24的流量,通过WireGuard链路导向站点A的备用SIP地址192.168.0.248,同时保证这条路由规则只作用于相关SIP流量,不影响其他业务。

第一步:先确认基础连通性

先确保站点B能ping通站点A的192.168.0.248,如果不通,先排查WireGuard的基础路由配置(比如两边有没有加静态路由让两个局域网段互通)。基础连通没问题再往下走。

第二步:给SIP专用FIB表加路由条目

在站点B上,把到运营商xxx.xxx.16.0/24的回程路由指向站点A的192.168.0.248,并放到你创建的SIP路由表中:

/ip route add dst-address=xxx.xxx.16.0/24 gateway=192.168.0.248 routing-table=SIP

小提示:如果站点A的WireGuard地址(比如10.10.10.1)是站点B到A的下一跳,gateway也可以填这个WG地址,直接用192.168.0.248更直观,前提是两边局域网路由已打通。

第三步:配置路由规则触发专用表

要让符合条件的流量使用SIP表,分两种场景配置:

场景1:站点B的SIP中继主动发起的流量

如果是站点B的SIP中继主动向运营商网段发起注册/呼叫,按中继设备的源IP匹配(假设中继IP是192.168.5.10):

/ip route rule add src-address=192.168.5.10/32 action=lookup routing-table=SIP

场景2:运营商主动发往站点B的SIP流量

如果是运营商那边主动推送的SIP流量,按站点B的PPPoE出口IP(假设是yyy.yyy.yyy.yyy)匹配:

/ip route rule add dst-address=yyy.yyy.yyy.yyy/32 action=lookup routing-table=SIP

要是不确定精准IP,也可以用SIP常用端口匹配(UDP 5060、TCP 5060/5061),不过按IP匹配更精准:

/ip route rule add protocol=udp dst-port=5060 action=lookup routing-table=SIP
/ip route rule add protocol=tcp dst-port=5060,5061 action=lookup routing-table=SIP

第四步:站点A的配套优化(可选但建议)

在站点A上,加一条反向路由确保192.168.0.248的回复流量能正确走WireGuard回站点B:

/ip route add dst-address=xxx.xxx.16.0/24 gateway=10.10.10.2 routing-table=main

这里的10.10.10.2是站点B的WireGuard地址,根据你的实际网段调整。

最后验证配置

配置完成后,在站点B用以下命令检查:

  • ip route print routing-table=SIP:查看SIP表的路由是否存在
  • ip route rule print:查看路由规则是否生效

然后测试SIP中继的注册状态,如果还是有问题,可以抓包看流量走向,确认路由规则是否正确触发。有不清楚的地方随时问我!

备注:内容来源于stack exchange,提问作者spjohnys

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 15:14:30