processone / eturnal

STUN / TURN standalone server
https://eturnal.net
Apache License 2.0
237 stars 22 forks source link

WebRTC Connectivity Issue with Safari on iPhone (Works on Desktop Chrome) #63

Open samueleastdev opened 9 months ago

samueleastdev commented 9 months ago

Hi,

I'm encountering a peculiar issue with WebRTC connectivity that seems to affect only my iPhone, while everything works as expected on my desktop. This issue persists even after experimenting with different TURN servers, including coturn.

Environment:

Desktop: Chrome on macOS Mobile: Safari on iPhone (over 4G) Tested Using: icetest.info

Desktop Results:

IceGatheringState: complete
host
udp
a1626ede-309e-495b-93db-9d72288135d6.local:64604
N/A
srflx
udp
92.46.196.3:45029
0.0.0.0:0
relay
udp
13.42.158.156:49252
92.46.196.3:45029

This output is as expected, and my IP (92.46.196.3) is correctly identified.

iPhone Results:

IceGatheringState: complete
host
udp
f68cadc1-c557-4ec6-9710-2451e4e3314c.local:50411
N/A
host
tcp
e85de7c0-430f-44b2-8cba-5fbc225ad8fe.local:9
N/A
IceGatheringState: complete

On my iPhone, the test never retrieves my public IP, which I suspect is causing the failure in establishing a WebRTC video call from iPhone to Desktop.

Similar Issue This seems related to a previously reported issue with coturn.

I'm looking for any insights or specific settings required to resolve this issue, particularly for Safari on iPhone. Any help or direction would be greatly appreciated.

Steps I've Taken Installed eturnal on Ubuntu (AWS). Opened necessary ports. Updated the YAML config file with the required ports and credentials. Verified functionality on desktop Chrome using https://icetest.info/. Attempted the same test on iPhone via Safari, which failed to return the IP (similar to the issue with coturn).

Thank you for any assistance you can provide!

oming commented 1 month ago

This issue may be related to Apple iCloud's private relay. When private relay was enabled, Safari's turn server was not working. For Chrome, it seems to be working normally as it is not affected by private relays.