我想使用一种很好的启发式方法来检测某人是否可能在对称NAT之后或正在阻止UDP数据包,而没有从TURN服务器生成ICE候选对象。
我尝试了此处说明的方法:https://webrtchacks.com/symmetric-nat/,但是由于测试假设2个STUN服务器将从SDP返回一个for position in range(needle_characters):
if haystack[counter+position] != needle[position]:
break
else:
return counter
,并且我在进行测试时,我不确定这是否仍然正确各种网络中,我总是得到2个不同的position = 0
while position < needle_characters and haystack[counter+position] == needle[position]:
position += 1
if position == needle_characters:
return counter
(我想是因为现在并行获取ICE候选人了吗?)
也对模拟对称NAT的最简单方法感到好奇。我尝试通过android热点进行连接,但这没有用。我尝试了SO解决方案here,但在Ubuntu 18.04上不起作用。