【发布时间】:2022-11-13 14:00:37
【问题描述】:
编辑:
我认为基于下面的答案,似乎答案是“客户端和服务器基本上只在一个端口上通信,3478(或等效”)
rfc 5766 : Issue when Both devices support TURN
===========================。
我一直在阅读关于 TURN 的几个资源,包括 RFC。
我得到了整个前提:
- 客户端在 TURN 服务器上创建分配
- 客户端通过 TURN 将数据发送到 Peer,TURN 通过中继的传输地址进行中继
- 从对等点--> 服务器--> 客户端的方式相同
大多数资源都集中在设置服务器以及需要配置哪些端口上。
我不清楚的一点是在客户端:
分配完成并且客户端可以开始发送数据后,他们是否会将数据发送到服务器分配的中继传输地址?或者他们是否将其发送到标准 TURN 端口,例如3478,然后服务器负责查找此客户端的分配并通过中继地址将其发送给对等方?例子:
客户端地址 192.6.12.123:45677(假设它是 NAT)
TURN 服务器监听 34.45.34.123:3478
TURN 服务器已在 34.45.34.123:50678 上为客户端完成分配那么当客户端想要向对等应用程序数据发送时,他们是在端口 3478 上发送还是在端口 50678 上发送?
我的假设(也基于我尝试过的一些 wireshark 捕获)是客户端始终在端口 3478 上发送所有内容,而服务器负责通过中继地址发送。
【问题讨论】: