P2P之UDP打洞原理、应用及框架设计
2023-09-27 14:27:56 时间
一、NAT类型
大多数NAT可分为如下类型
cone nat:把相同的内网地址和端口始终转换为同一个外网地址和端口
如192.168.0.2:8000始终转为外网的218.52.37.243:60000,在此session的生命期内,不管目的ip地址和端口是什么,转化的外网地址都不变
symmetric:相同的内网地址和端口,在对端的地址端口不同时,转变为不同的外网地址和端口
如192.168.0.2:8000给地址A和地址B发包时,转化为不同的外网端口60000和60001,对应两个session
nat具有拦截不速之客的功能,从数据包进入内网受限的角度上分,cone nat又分为如下几种
1 full cone 几乎没有任何限制,任何地址都可以往转化后的外网地址发包,nat会允许数据包通过
2 restrict cone nat 只允许相同ip地址的主机发的包通过
3 port restrict cone 只允许相同ip地址,相同端口的包通过
symmetric nat在限制方面和port restrict cone是一致的
二、比较流行的nat的一些特性
iptables:symmetric nat,转化后的外网端口尽量为内网原端口,本端口被占用时,新分配的端口号似乎并无规律(不是累+1的)
windows ics/nat:对内网端口(1025-3000)的端口尽量转换为原端口,该端口被占用或者超过3000的端口时,很可能从1025开始分配端口号
简述以太坊P2P网络之UDP 个人认为以太坊是区块链项目中带来技术重新认识和学习的不错的项目,特别是在P2P网络这一块。本文将介绍P2P网络中负责节点之间的通信连接和服务发现,本文的内容主要是对代码层级的理解,可能存在对其理解的错误,欢迎指点。
1为这次的Session分配了一个端口60000,那么Server S收到的Client A的地址是200.0.0.132:60000,这就是ClientA的外网地址了。
P2P之UDP穿透NAT的原理与实现 - 增强篇 为了方便操作,推荐你使用一个远程登陆软件,可以直接在一台机器上操作所有的相关的计算机,这样很方便,一个人就可以完成所有的工作了。呵呵,本人就是这么完成的。欢迎有兴趣和经验的朋友来信批评指正,共同进步。
UDP 打洞 原理 1. NAT分类根据Stun协议(RFC3489),NAT大致分为下面四类1) Full Cone这种NAT内部的机器A连接过外网机器C后,NAT会打开一个端口.然后外网的任何发到这个打开的端口的UDP数据报都可以到达A.
大多数NAT可分为如下类型
cone nat:把相同的内网地址和端口始终转换为同一个外网地址和端口
如192.168.0.2:8000始终转为外网的218.52.37.243:60000,在此session的生命期内,不管目的ip地址和端口是什么,转化的外网地址都不变
symmetric:相同的内网地址和端口,在对端的地址端口不同时,转变为不同的外网地址和端口
如192.168.0.2:8000给地址A和地址B发包时,转化为不同的外网端口60000和60001,对应两个session
nat具有拦截不速之客的功能,从数据包进入内网受限的角度上分,cone nat又分为如下几种
1 full cone 几乎没有任何限制,任何地址都可以往转化后的外网地址发包,nat会允许数据包通过
2 restrict cone nat 只允许相同ip地址的主机发的包通过
3 port restrict cone 只允许相同ip地址,相同端口的包通过
symmetric nat在限制方面和port restrict cone是一致的
二、比较流行的nat的一些特性
iptables:symmetric nat,转化后的外网端口尽量为内网原端口,本端口被占用时,新分配的端口号似乎并无规律(不是累+1的)
windows ics/nat:对内网端口(1025-3000)的端口尽量转换为原端口,该端口被占用或者超过3000的端口时,很可能从1025开始分配端口号
简述以太坊P2P网络之UDP 个人认为以太坊是区块链项目中带来技术重新认识和学习的不错的项目,特别是在P2P网络这一块。本文将介绍P2P网络中负责节点之间的通信连接和服务发现,本文的内容主要是对代码层级的理解,可能存在对其理解的错误,欢迎指点。
1为这次的Session分配了一个端口60000,那么Server S收到的Client A的地址是200.0.0.132:60000,这就是ClientA的外网地址了。
P2P之UDP穿透NAT的原理与实现 - 增强篇 为了方便操作,推荐你使用一个远程登陆软件,可以直接在一台机器上操作所有的相关的计算机,这样很方便,一个人就可以完成所有的工作了。呵呵,本人就是这么完成的。欢迎有兴趣和经验的朋友来信批评指正,共同进步。
UDP 打洞 原理 1. NAT分类根据Stun协议(RFC3489),NAT大致分为下面四类1) Full Cone这种NAT内部的机器A连接过外网机器C后,NAT会打开一个端口.然后外网的任何发到这个打开的端口的UDP数据报都可以到达A.
相关文章
- 如何构建Android MVVM应用框架
- 构建React.js应用的十佳UI框架,都在这了!
- 【转】在使用实体框架(Entity Framework)的应用中加入审计信息(Audit trail)跟踪数据的变动
- Win7_Ultimate + VS2010 + openGL_MFC单文档应用开发框架搭建步骤
- 如何用Node去写一个Web应用框架
- android 获取应用的当前版本号&获取当前android系统的版本号
- 深度学习原理与框架-CNN在文本分类的应用 1.tf.nn.embedding_lookup(根据索引数据从数据中取出数据) 2.saver.restore(加载sess参数)
- 数据挖掘与数据化运营实战:思路、方法、技巧与应用
- Moco 框架以及其在 Web 集成测试的应用
- SpringBoot --web 应用开发之文件上传
- ice框架应用记录-框架说明
- Java回调机制在RPC框架中的应用示例
- Android源代码之DeskClock (三) Proxy/Delegate Application 框架应用
- 三大特性,多个场景,Serverless 应用引擎 SAE 全面升级
- Redis专题之12、第12篇:Redis应用问题解决(缓存穿透、击穿、雪崩、分布式锁)
- laravel框架应用和composer扩展包开发
- 京东云PostgreSQL在GIS场景的应用分享
- 跨平台的移动应用开发框架-Sencha Touch
- 简化Kubernetes应用部署工具-Helm之Hook
- 决策树原理、Scikit-learn实现及其在生物信息中的应用
- 线性筛的理解及应用
- (已上传源码)最近开发的一款应用,我选择了哪些框架 & 第三方库
- ASP.NET MVC是如何运行的[1]: 建立在“伪”MVC框架上的Web应用
- Enterprise Library深入解析与灵活应用(8):WCF与Exception Handling AppBlock集成[下]
- Enterprise Library深入解析与灵活应用(6):自己动手创建迷你版AOP框架
- iOS应用安全防护框架概述
- asp.net模版页面的高级应用