SIP数据包的IP地址

网络工程 ip 代理
2022-02-08 06:24:00

在这个网站上,它说

  1. 这显示了 SIP 数据包的源 IP 地址和目标 IP 地址。请注意,当数据包在 SIP 代理服务器之间传递时,此信息会发生变化。

我很困惑为什么会这样。我猜 IP 地址会被当前和下一个代理服务器的 IP 地址逐跳替换。为什么在 SIP 数据包从一个端点转发到另一个端点时需要更改其 IP 地址?

为什么不将其视为源IP地址和目标IP地址保持不变的典型数据包,而是路由器根据目标IP地址进行路由?

2个回答

你是对的,IP 地址将被该会话的发送和接收 SIP 代理服务器 IP 地址替换,尽管这不是 NAT,因为它们实际上是单独的 IP/UDP 会话。

路由器对 SIP 数据包没有任何不同的处理,如果数据包需要在网络之间路由,它将在源 IP 和目标 IP 不变的情况下转发。SIP 代理服务器不是 IP 路由器。SIP 只是另一种通过 IP/UDP 传输的应用层协议

当 SIP 代理服务器做出路由决策时,它实际上是在查看目标 SIP 地址 (5) 而不是 IP 目标地址。

客户端使用其 IP 地址作为源和 SIP 代理服务器的 IP 地址作为目标打开与第一个 SIP 代理的 UDP 会话。UDP 有效负载是 SIP 应用层流量。代理服务器做出 SIP 路由决策(不同于 IP 路由)并打开一个到下一个 SIP 服务器的 UDP 会话,并在该会话中转发 SIP 流量。每条支路的 IP 和 UDP 层是唯一的,但端到端的 SIP 会话具有相同的 SIP 会话 ID,因此是相同的。

在组织之间进行呼叫时,代理功能变得非常有用。如果没有代理服务器,每个组织都必须拥有彼此地址空间的完整路由信息才能建立端到端连接。可能会有重叠,因此需要复杂的 NAT,它还必须了解 SIP 协议才能更改应用层的任何地址。使用位于每个组织边缘的 SIP 代理服务器,可以隐藏内部地址空间。客户端只需路由到 SIP 代理服务器即可访问该组织内的任何 IP。

除非源-目标路径中存在NAT,否则在显示的 wireshark 跟踪中标记为1的字段中不会更改源或目标地址。

代理服务器不会修改这些字段,只有支持 NAT 的设备才能修改源/目标地址和端口。