gpt4 book ai didi

ejabberd - 如何使用 ejabberd 配置/调试 TURN?

转载 作者:行者123 更新时间:2023-12-04 09:52:08 28 4
gpt4 key购买 nike

我想在 ejabberd 中配置 STUN/TURN,以便将 WebRTC 与“对话”XMPP 客户端一起使用。

我当然看了ejabberd STUN/TURN documentation以及如何操作 configure DNS SRV records .我也临时设置了authentication to anonymous .根据要点 A/V calls in Conversations我用 adb logcat 测试了 ICE/STUN/TURN和 Trickle ICE .

我的问题是:我确实看到了类型为“srflx”的“发现的 ICE 服务器”和“STUN 候选者”(所以我认为 STUN 工作正常),但是没有类型为“中继”的“候选者”,我只得到类型“主机” ”。有时(!)我收到通知:“无法访问?”

我的配置(ejabberd.yml):

'listen' 是为 udp 和 tcp 配置的,两者都是 use_turn: true
'mod_stun_disco' 包含四个条目:type: stunturntransport: udptcp ,都具有相同的 IP 和端口号,与 DNS SRV 记录匹配。

listen:
-
port: 43210
transport: udp
module: ejabberd_stun
use_turn: true
## The server's public IPv4 address:
turn_ip: 123.123.123.123 # Servers real IPv4 IP
auth_type: anonymous


mod_stun_disco:
services:
-
host: 123.123.123.123 # Servers real IPv4 IP
port: 43210
type: turn
transport: udp

所以我最后一个可能的麻烦来源是:
我正在使用“初学者友好”托管托管服务提供商,其中我只有一个非特权用户帐户 (Fedora)。
因此,我以用户身份构建并运行 ejabberd,并且不得不打开几个自定义防火墙端口:c2s、s2s_in、https,使用和不使用 TLS(以及“让我们加密”证书)。
但是 AFAICS 一切正常,除了 TURN。
当然,我无权运行 tcpdump 来分析 TCP/UDP 流量,但是在 ejabberd.log 中我可以找到:
[info] @mod_stun_disco:handle_call:332 Offering STUN/TURN services to user@server.tld/Conversations.AbCD
当我将日志级别增加到 debug 时,对于真正的 XMPP 客户端,有“在流上发送 XML”条目,其中包含“阅读‘WebRTC 中的中继候选收集仅适用于凭证’。”,我将 auth: anonymous 更改为 user 并提供了TrickleICE 的有效 testuser,现在我只在我的日志中看到“不是临时用户名”。

所以我的问题是:
接下来要尝试什么?
有谁知道出了什么问题?
或者有没有办法更深入地调试?

最佳答案

我对 STUN/TURN 一窍不通,但在 ejabberd 聊天室问了这个问题,得到了两个提示:

Licaon_Kter 说:

firewall for turn range 49xxx-65000



霍尔格说:

49152-65535 UDP must be accessible, plus 43210 UDP with his config.

And he should revert his fiddling: auth_type must be kept to the default (user) and he should just do mod_stun_disco: {}.

Regarding the UDP port range (49152-65535), he could configure a smaller range, e.g. turn_min_port: 60000 and turn_max_port: 60999. But he does need more than one or two ports.



如果您有更多疑问,可以通过 ejabberd@conference.process-one.net 加入 ejabberd 聊天室

关于ejabberd - 如何使用 ejabberd 配置/调试 TURN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61999038/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com