-1

我为 WebRTC 设置了 turnserver 3.2.5.9

我想这样做。

Client-A-->(TCP)-->TURN-->(UDP)-->TURN-->(TCP)-->Client-B 

我每个 Client-A 和 B 都有两个问题,它们都在不同的专用网络中。

对于客户 A 的问题。

TURN 服务器响应host srfix relay.

我希望有一个relay候选人作为tcp.

但是,我只能拥有udp

我怎样才能有一个relay候选人作为tcp.

对于客户B的问题。

TURN 服务器只响应host

因此,Client-B 无法访问 TURN 服务器。

Client-B 放置的 FW 策略是严格的,不允许使用UDP.

但是,我认为它应该通过 TCP 访问 TURN 服务器。

有谁知道在这两种情况下如何告诉 TURN 服务器客户端的全局 IP 和 TCP 端口。

这是turnserver.conf

listening-port=80
listening-ip=my-server-global-ip
external-ip=my-server-global-ip
lt-cred-mech
userdb=/opt/turnserver/etc/turnuserdb.conf
realm=my.server.domain
stale-nonce
no-udp
no-stun

这是来自Client-A 的Trickle ICE 工具的响应

Time    Component   Type    Foundation  Protocol    Address Port    Priority
0.015   1   host    2508812977  udp 10.2.1.17   53175   126 | 32542 | 255
0.059   1   srflx   3607399481  udp Client-Global-ip    53175   100 | 32542 | 255
0.086   1   relay   1628315121  udp my-server-global-ip 54043   1 | 32542 | 255
0.116   1   host    3674902081  tcp 10.2.1.17   9   90 | 32542 | 255
39.827  Done
39.833

这是来自客户端 B 的Trickle ICE 工具的响应

0.012   1   host    1197209968  udp 192.168.95.131  60019   126 | 30 | 255
39.819  Done
39.823
4

2 回答 2

1

WebRTC 不支持分配 TCP 中继候选。请注意,您仍然可以在客户端和 TURN 服务器之间使用 TCP 的 TURN/TCP 候选者,它们的本地类型首选项为 1,您可以在涓流冰工具输出中看到。

于 2019-05-24T07:47:57.187 回答
0

您需要使用 TCP 协议选项重新配置 TURN 服务器。Kurento 和 Wowza 支持 WebRTC 的 TCP 协议。

于 2020-10-22T05:26:43.703 回答