mod_sofia 几个有用的配置项

2020-12-21 11:40:09 浏览数 (1)

笔者在使用 mod_sofia 的过程中发现有一些配置项非常有用,在这里分享给大家。

  • user-agent-string 和 manage-presence

建议 user-agent-string 配置为 FreeSWITCH 1.10manage-presence 配置为 false

这样 FreeSWITCH 呼出时发送的 invite 包尽可能小,否则有可能超过 mtu。

  • manual-redirect

建议 user-agent-string 配置为 true

这样在执行 bridge 之后如果收到的回应是 302,那么就自动进到 dialplan 重新路由。

默认值是 false,意味着 FreeSWITCH 自动处理 302,改向到新地址,但这样往往不是我们想要的结果(比如缺少权限检查等)。

  • enable-3pcc

如果跟思科 CM 对接,建议 user-agent-string 配置为 true,因为思科喜欢用 3pcc

  • parse-all-invite-headers

如果 parse-all-invite-headers 配置为 true,FreeSWITCH 处理收到的 invite 消息,把 invite 头尽可能处理成通道变量。

  • all-reg-options-ping 和 ping-mean-interval 以及tcp-unreg-on-socket-close

这三个配置项放一起讲,因为跟 FreeSWITCH 处理 sip 注册请求有关。

如果 all-reg-options-ping 配置为 `true',那么 FreeSWITCH 主动发 sip 心跳给注册成功的 ua,这在 nat 环境下非常有用。

ping-mean-interval 可以配为 28,FreeSWITCH 每隔 28 秒发一次 sip 心跳。

如果 tcp-unreg-on-socket-close 配置为 true,这个可以顾名思义了。

  • bind-params

默认同时 bind udp 和 tcp。

如果只想 bind tcp,可配置为 transport=tcp

这样来自国外的 sip 攻击会减少很多。

  • NDLB-force-rport

如果碰到 sip nat 方面的问题,可以尝试修改 NDLB-force-rport

nat 是个很难的问题,限于篇幅,不再展开。

以上这些配置项的读取处理都在 sofia.c,建议大家可以试用一下,如果你你找到了更多有用的配置项,欢迎在评论区留言。

0 人点赞