首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >WebRTC:如果一个对等点总是使用全锥或地址限制(但不是端口限制) NAT,那么我们需要一个转接服务器吗?

WebRTC:如果一个对等点总是使用全锥或地址限制(但不是端口限制) NAT,那么我们需要一个转接服务器吗?
EN

Stack Overflow用户
提问于 2021-08-01 05:01:04
回答 2查看 415关注 0票数 4

我读过一些关于WebRTC的文章,如果只有一个对等点使用对称NAT,而另一个对等端使用对称或端口限制NAT,那么我就不明白为什么我们需要一个转身服务器,所以假设A使用完全Cone NAT,B使用对称NAT:

  1. STUN服务器将发送正确的IP地址B到A,正确的IP +端口地址A到B。
  2. A试图连接到B(现在A将能够接受来自B的消息,因为它位于Dest Address列中)。
  3. B试图连接到A,这将允许从A到B的请求(ofc A需要将端口更新到从B接收到的端口,而不是Sdp)。

我是遗漏了什么,还是这是正确的(并已实现的),还是太复杂而无法实现?

如果这是正确的,那么理论上,如果我是对等点A,并且我使用的是完全Cone NAT,那么任何对等的B都可以连接到我(只要我首先发送连接请求),而不需要一个转服务器。

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-08-01 10:09:29

如果对称NAT环境仅更改端口,则有关连接到完全Cone NAT的处理是正确的。打孔的步骤是可行的。

但是,许多企业和移动环境都有复杂的路由方案和与传统家庭网络路由器不同的疯狂网络环境。这些环境不仅仅是一个连接到电缆调制解调器的小路由器盒。它是一个使用IP地址银行的路由器和负载均衡器的复杂数组。并且每个出站连接都可能得到一个与以前的连接不同的IP地址。从技术上讲是“对称NAT”。

因此,在此环境中的节点从STUN服务器获得外部IP /端口对后,后续发送到对等地址可能同时更改端口和IP地址

因此,NAT在打孔步骤中看到UDP数据包到达时所看到的IP地址与预期完全不同。因此,这里需要一个中继地址(转)。

票数 1
EN

Stack Overflow用户

发布于 2021-08-01 10:43:10

如果从映射/过滤的角度来看,这个问题要简单一些。其他NAT术语并不能很好地描述事物的实际工作方式。我的答案来自RFC 4787好奇的WebRTC :连接

映射是NAT为出站数据包分配IP/端口的时候。远程对等方可以向此映射发送通信量。过滤是围绕谁可以使用这些映射的规则。

然后,过滤和映射可以是与地址相关的和独立的。如果映射依赖于地址,则意味着每次联系新的IP/端口时都会创建一个新的映射。如果映射是独立于地址的,则意味着不管您在哪里发送通信量,它都会被重用。这些规则同样适用于过滤。

如果一个对等点是地址+过滤独立的,我不相信转服务器会带来好处。

如果您想要TCP连接,那么部署一个转身服务器是个好主意。一些WebRTC服务器支持TCP,但我不相信任何浏览器都会生成被动的TCP候选服务器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68610661

复制
相关文章
Web前端WebRTC 攻略(五) NAT 穿越与 ICE
WebRTC 进行端对端进行实时音视频通讯时,常常一方或者双方都是隐藏在 NAT 之后的内网地址。ICE 则用于寻找一条传输数据通道连接。本文介绍了 NAT 穿越和 ICE 框架的基础知识和主要步骤。 我们知道使用 WebRTC 进行端对端进行实时音视频通讯时,WebRTC 本身是基于点对点(Peer-to-Peer)连接的,最便捷的方式就是通话的双方通过 IP 直连,摆脱原始的直播服务器中转的方式。 如果连接双方都是公网地址,则可以直接访问到对方,从而建立连接。但是在现实的应用场景中,大部分情况下其中一方
用户1097444
2022/06/29
2.6K0
Web前端WebRTC 攻略(五) NAT 穿越与 ICE
前端音视频之WebRTC初探
在上个系列专栏前端音视频的那些名词中,我们对比特率、帧率、分辨率、容器格式以及编码格式有所了解,如果还没看过的同学请点击上方链接自行跳转。
童欧巴
2020/10/19
1.2K0
前端音视频之WebRTC初探
【项目实战】基于 WebRTC 的音视频在线监考模块的设计与实现(上)
最近在做关于考试系统的项目,其中有一项需求分析是要做在线监考模块,因为之前没有做过这方面的东西,还是比较迷茫的,在查阅了大量的资料之后,再结合系统是以 H5 的形式展示的,最后选用了 WebRTC 框架为主体来实现这一模块,本文会介绍其基本理论;  
sidiot
2023/08/31
4650
【项目实战】基于 WebRTC 的音视频在线监考模块的设计与实现(上)
HTTP、WebSocket、gRPC 或 WebRTC:哪种通信协议最适合您的应用程序?
在为您的应用程序选择通信协议时,有很多不同的选择。在本文中,我们将了解四种流行的解决方案:HTTP、WebSocket、gRPC和WebRTC。我们将通过调查其背后的技术、它的最佳用途及其优缺点来探索每个协议。
用户1418987
2023/10/16
3.3K0
HTTP、WebSocket、gRPC 或 WebRTC:哪种通信协议最适合您的应用程序?
HTTP、WebSocket、gRPC 或 WebRTC:哪种通信协议最适合您的应用程序?
在为您的应用程序选择通信协议时,有很多不同的选择。在本文中,我们将了解四种流行的解决方案:HTTP、WebSocket、gRPC和WebRTC。我们将通过调查其背后的技术、它的最佳用途及其优缺点来探索每个协议。
用户1418987
2023/10/16
1.8K0
HTTP、WebSocket、gRPC 或 WebRTC:哪种通信协议最适合您的应用程序?
WebRTC,P2P技术,IPv6的一些思考
不过放心,这篇文章不会只告诉你p2p”是什么“,也不会仅仅告诉你”为什么“,而要深刻探讨它的设计”是否合理“。
Jean
2019/11/18
3.1K1
WebRTC,P2P技术,IPv6的一些思考
利用Slack的TURN服务器访问Slack内部网络
该篇Writeup介绍了作者通过TURN服务器的中继作用,实现对Slack的内部网络和AWS元数据资源的访问。文中涉及到了STUN、TURN协议和WebRTC知识,还用到了一个未公开的STUN协议安全测试工具Stunner。我们一起来看看。
FB客服
2020/05/14
2K0
利用Slack的TURN服务器访问Slack内部网络
WebRTC直播技术(二)-ICE/STUN/TURN
首先要掌握WebRTC连接建立过程,需要掌握几个知识点: NAT, ICE, STUN, TURN, DTLS等。如果之前有接触过P2P相关技术的同学可能就会比较容易理解。WebRTC是一个基于浏览器与浏览器之间的实时音视频通话方案,那么有于公网ip地址有限的问题,用户的浏览器常常位于NAT后,那么建立连接就涉及到了打洞技术。
IMWeb前端团队
2019/12/03
2.3K0
WebRTC直播技术(二)-ICE/STUN/TURN
webrtc之STUN、TURN、打开摄像头实战
大家周末好,今天给大家分享的是webrtc第一篇文章,在之前的音视频文章里面没有分享过关于webrtc的内容;在上个周末分享了一篇关于播放器的文章,那篇文章整体上介绍了播放器的设计结构;我个人的学习路线,主要分为两大方向:ffmpeg和webrtc,然后会具体到各种协议。
用户6280468
2022/03/21
2.2K0
webrtc之STUN、TURN、打开摄像头实战
JavaScript 是如何工作的:WebRTC 和对等网络的机制!
WebRTC,名称源自网页即时通信(英语:Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。
前端小智@大迁世界
2019/03/15
2.4K0
JavaScript 是如何工作的:WebRTC 和对等网络的机制!
Kubernetes 临时存储需要限制吗?
Node节点通常还可以具有本地的临时性存储,由本地挂载的可写入设备或者 RAM来提供支持。临时(Ephemeral) 意味着对所存储的数据不提供长期可用性的保证。
YP小站
2020/09/14
5.7K0
STUN协议详解
    本文是基于RFC5389标准的stun协议。STUN的发现过程是基于UDP的NAT处理的假设;随着新的NAT设备的部署,这些假设可能会被证明是无效的,当STUN被用来获取一个地址来与位于其在同一NAT后面的对等体通信时,它就不起作用了。当stun服务器的部署不在公共共享地址域范围内时,stun就不起作用。如果文中有不正确的地方,希望指出,本人感激不尽 1. 术语定义 STUN代理:STUN代理是实现STUN协议的实体,该实体可以是客户端也可以是服务端 STUN客户端:产生stun请求和接收stun回应的实体,也可以发送是指示信息,术语STUN客户端和客户端是同义词 STUN服务端:接收stun请求和发送stun回复消息的实体,也可以发送是指示信息,术语STUN服务端和服务端是同义词 映射传输地址:客户端通过stun获取到NAT映射的公网传输地址,该地址标识该客户端被公网上的另一台主机(通常是STUN服务器)所识别 2. NAT类型 NAT类型有四种:     完全型锥(Full-Cone):所有来自同一个内部ip地址和端口的stun请求都可以映射到同一个外部ip地址和端口,而且,任何一个处于nat外的主机都可以向处于nat内的主机映射的外部ip和端口发送数据包。     限制型锥(Restricted-Cone):所有来自同一个内部ip地址和端口的stun请求都可以映射到同一个外部ip地址和端口,和完全性锥不同的是,只有当处于NAT内的主机之前向ip地址为X的主机发送了数据包,ip地址为X的主机才可以向内部主机发送数据包。     端口限制型锥(Port Restricted-Cone):与限制锥形NAT很相似,只不过它包括端口号。也就是说,一台IP地址X和端口P的外网主机想给内网主机发送包,必须是这台内网主机先前已经给这个IP地址X和端口P发送过数据包    对称型锥(Symmetric):所有从同一个内网IP和端口号发送到一个特定的目的IP和端口号的请求,都会被映射到同一个IP和端口号。如果同一台主机使用相同的源地址和端口号发送包,但是发往不同的目的地,NAT将会使用不同的映射。此外,只有收到数据的外网主机才可以反过来向内网主机发送包。 3. 操作概述
全栈程序员站长
2022/09/09
3.5K0
WebRTC 速成课程
WebRTC (Web Real-Time Communication)是一个免费、开源的项目,通过简单的应用程序编程接口(API)为 Web 浏览器和移动应用程序提供实时通信(RTC)。这也表明了 WebRTC 设计的目标就是“设计一种通过尽量短的、延迟尽量低的路径进行 P2P 通信的协议,提供一种简单的、能让所有人使用的 API”。一旦你把它放入浏览器,它就是标准;一旦它成为了标准,开发时会遇到的“摩擦”就会消失。
用户1324186
2022/02/18
1.4K0
WebRTC 速成课程
Game as a Service —— 开源云游戏搭载WebRTC
软件即服务,基础架构即服务,平台即服务,通信平台即服务,视频会议即服务,那么,游戏即服务(Game as a Service)如何呢?已经有不少科技公司试水云游戏,最著名的要数Google的Stadia。对WebRTC来说,Stadia已经算是老朋友了,但是其他云游戏也能以同样的方式运用WebRTC吗?
LiveVideoStack
2020/05/13
2.4K0
Game as a Service —— 开源云游戏搭载WebRTC
Game as a Service——开源云游戏搭载WebRTC
原文链接:https://webrtchacks.com/open-source-cloud-gaming-with-webrtc/
LiveVideoStack
2020/05/09
2.7K0
Game as a Service——开源云游戏搭载WebRTC
漫谈NAT(一):各种NAT类型
好久没有写也没有填系列文章了,正好之前文章提到了Fullcone,所以干脆写一篇文章来好好聊聊NAT相关的内容。NAT作为当今现实网络中不可或缺的一部分,虽然应用广泛,但是对它的介绍却远不及其他网络协议。另一方面,IETF也把NAT视为IPv4的权宜之计,在很长一段时间内都寄解决地址短缺问题之希望于大力推广IPv6。从RFC的提出时间就可以看出,很多NAT穿透相关的RFC提出时间都晚IPv6不少。而现在看来,IPv6的推广乃至IPv4的废弃还有相当长的路要走,所以可以预见,NAT还将陪伴我们不少时日。
KAAAsS
2022/01/14
6.5K0
漫谈NAT(一):各种NAT类型
webrtc开发入门_统计的简单应用
WebRTC,即Web Real-Time Communication,web实时通信技术。简单地说就是在web浏览器里面引入实时通信,包括音视频通话等。
全栈程序员站长
2022/09/19
1.2K0
webrtc开发入门_统计的简单应用
NAT 穿透原理浅浅说(一)
杨明亮
2017/09/20
24.4K3
NAT 穿透原理浅浅说(一)
WebRTC基础面试题
最近音视频会议,在线教育都比较火,很多学习了我课程的同学都偿试着去面试音视频相关的岗位,这里我就简单的整理了一份 WebRTC 相关的面试题,希望对大家有所帮助。
音视频_李超
2020/04/23
2.8K0
点击加载更多

相似问题

udp孔洞冲孔和端口限制锥NAT

45

WebRTC:对等连接限制?

52

如何限制WebRTC使用的UDP端口范围?

11

当使用具有相同IP地址的对等点时,WebRTC总是在本地连接吗?

16

WebRTC路由使用转弯而不向对等点公开IP地址

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文