【发布时间】:2014-01-20 07:23:48
【问题描述】:
我的任务是确定单个浏览器客户端的连接性。我想知道发出的本地 ICE 候选人是否表明客户的连接性。因此,检查来自 google 的 STUN 服务器的候选人:
mid: audio, candidate: a=candidate:941443129 2 udp 1845501695 2.84.19.92 49669 typ srflx raddr 192.168.1.2 rport 49669 generation 0
我可以看到我的公共 ip 2.84.19.32 并且我还可以查看我在 NAT 后面的本地 ip 192.168.1.2。此时我也知道浏览器正在侦听 UDP 端口 49669 并等待连接。此时我可以推断 STUN 客户端已成功连接到我的公共 ip 和端口吗?
我了解 ICE 的工作是确定是否可以与该候选人建立连接,但是否可以确定与单个客户端(浏览器)的连接?
我的最终问题/任务是利用 ICE 流程并了解 [单个] 客户端是否在 NAT 后面以及那是什么类型的 NAT 的事实。这可能吗?
【问题讨论】:
-
你可以通过'typ'属性判断它是什么类型的ice候选,如果是'host'那么它肯定在NAT后面,当它是'relay'时它在外面NAT。
标签: webrtc