Cecylia Bocovich wrote:
We've had several reports about the NAT check being inconsistent since we upgraded and re-installed the Snowflake broker[0], it seems it's not just you having this problem. I've opened an issue to look into it[1].
Thanks for the confirmation. Meanwhile, I was getting verbose logging while doing several restarts. Most of them ended up in a timeout waiting for the probe test to open a data channel:
2024/11/29 19:29:48 Waiting for a test WebRTC connection with NAT check probe server to establish... 2024/11/29 19:29:48 NAT check: WebRTC: OnConnectionStateChange: connecting 2024/11/29 19:29:49 NAT check: WebRTC: OnConnectionStateChange: connected 2024/11/29 19:29:49 WebRTC: DataChannel.OnClose 2024/11/29 19:29:49 NAT check: WebRTC: OnConnectionStateChange: closed
while a successful attempt logs like that: 2024/11/29 19:16:38 Waiting for a test WebRTC connection with NAT check probe server to establish... 2024/11/29 19:16:38 NAT check: WebRTC: OnConnectionStateChange: connecting 2024/11/29 19:16:39 NAT check: WebRTC: OnConnectionStateChange: connected *2024/11/29 19:16:39 WebRTC: DataChannel.OnOpen* 2024/11/29 19:16:39 Test WebRTC connection with NAT check probe server established! This means our NAT is unrestricted! 2024/11/29 19:16:39 NAT Type measurement: unknown -> unrestricted 2024/11/29 19:16:39 WebRTC: DataChannel.OnClose 2024/11/29 19:16:39 NAT type: unrestricted 2024/11/29 19:16:39 NAT check: WebRTC: OnConnectionStateChange: closed
To me this looks like webRTC connection is successful, however, DataChannel never reaches the OnOpen but straight the OnClose signal. Looking through the proxy code, I have no idea, why that could happen, but I'm by no means an expert in WebRTC. Anyway, I hope it helps to diagnose the problem further. Meanwhile, I disabled rechecking and simply try until I get lucky during the NAT testing.