什么原因导致 SIP 流量进入交换机但却没有出来?

什么原因导致 SIP 流量进入交换机但却没有出来?

背景

我一直在努力让我的 SIP 电话在我们全新的办公室中注册到全新的路由器和交换机后面。我们的 PBX 托管在异地。我与我们的提供商合作尝试了几种不同的方法。我们尝试了常规 NAT 来连接到他们的 NAT 感知会话边界控制器。我们尝试使用 siproxd(pfSense 包)来拦截 SIP 注册请求并代表电话进行注册。最后,我们尝试手动配置电话以在我的本地网络上使用 siproxd 守护程序进行注册。

在整个测试过程中,我们看到手机成功完成了以下所有操作:

  • 通过 IP 地址联系托管的 FTP 服务器
  • 从上述服务器下载配置
  • 执行 DNS 查询以解析 NTP 服务器的 IP 地址
  • 查询 NTP 服务器来设置时间
  • 执行 DNS 查询以解析 SIP 服务器的 IP 地址

症状

在电话成功完成所有预注册任务后,我们从未看到注册尝试到达 pfSense 盒或提供商的 PBX。我已在 siproxd 中启用了最高级别的调试,并且没有看到任何 TCP 连接或 UDP 数据包。但是,从工作站简单地 telnet 到端口 5060 将生成预期的日志消息。在 pfSense 盒上执行数据包捕获显示绝对没有 SIP 流量尝试。

有没有搞错?

我最后的故障排除步骤彻底难倒了我,并让我问了这个问题,步骤如下。我首先将电话插入的交换机端口镜像到我的工作站交换机端口。我对接口上的所有流量执行了数据包捕获。令我惊讶的是,我看到了来自电话的 SIP 注册数据包。以下是一个例子:

手机抓包

显然,电话正在尝试向 PBX 注册(这些也是正确的 IP 地址)。

我的下一步是镜像接入 pfSense 路由器 LAN 端的交换机端口。我看到来自 172.200.22.102 电话的所有 FTP、NTP 和 DNS 流量都从交换机传出,但没有 SIP 数据包的踪迹。这对我来说完全是莫名其妙的!是什么原因造成的仅有的SIP 流量在交换机内消失吗?

环境

交换机配置

IP 地址为 172.22.200.102 的电话位于此交换机的端口 4 中,路由器 LAN 链接位于端口 22 中。

VLAN 配置

VLAN 200 参与

我可以分享可能需要的任何其他设置。

答案1

我花了大约 40 个小时解决这个问题后找到了解决方案。

交换机中有一个设置可以启用“自动 DoS”保护。显然,它将具有匹配源端口或目标端口的 TCP 或 UDP 流量视为布拉特攻击并丢弃数据包。这是非常短视的做法,因为 SIP 流量通常(总是?)依赖于源端口和目标端口 5060。

如果文字描述不够充分:

在此处输入图片描述

相关内容