NAT穿透 - P2P

2023-11-10

一、NAT穿透

NAT穿透,即内网穿透,也称为打洞。

其网络拓扑示例:
NAT穿透

二、NAT分类

NAT类型

  • 完全锥型NAT: 内网客户端映射到一个外部IP:Port,IP端口无限制,任意主机都可往该映射端口发数据。
  • 地址受限锥型NAT:IP受限,内网主机需发消息给目标主机,才能接收该主机的数据,收发的数据包IP地址要一样,端口不限制。
  • 端口受限锥型NAT:在地址受限锥型NAT的基础上,限制端口,收发的数据包必须IP和端口一致才能接收。
  • 对称NAT: 发送的数据包IP:Port映射成一个外网IP:Port,IP或端口不同则映射多个外网IP:Port,必须发送消息给目标主机才能接收数据。

总结

NAT穿透,由服务器接收双方的外网映射地址和端口,实现由一方客户端往另一方的外网映射端口发送数据,按不同类型,直接发送数据包到对方网关或先发送数据包目标再打通链路。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NAT穿透 - P2P 的相关文章

随机推荐

  • torch 1.13.0 对应的torchvision版本

    torch最新的stable版本是1 13 0 奈何官网也没有说对应的torchvision版本是啥 如果想要whl下载的话 就非常麻烦 结论 torch 1 13 0对应torchvision 0 14 0 推导过程如下 首先看官网的 p
  • layer_factory.hpp:81] Check failed: registry.count(type) == 1 (0 vs. 1) Unknown layer type: Python

    这个问题我查了很多博客 里面很多都相近 但是不能用 首先这个问题的意思是 python层这个名字无法识别 然后给出了可以是别的例子 而这个层在trainval和text的prototxt中都有 解决方法 在caffe文件夹下找到makefi
  • Python---人生重开模拟器(简版)

    专栏 python 个人主页 HaiFan 专栏简介 本专栏主要更新一些python的基础知识 也会实现一些小游戏和通讯录 学时管理系统之类的 有兴趣的朋友可以关注一下 人生重开模拟器 思维导图 前言 一 设置初始属性 1 游戏标题 2 属
  • 一个useState学会React的主要思想

    正经学徒 佛系记录 不搞事情 皮毛React开发者 一个useState有什么好学的 hook那么多 哪个不比useState难 自身React开发者 学的不是如何使用 而是为什么会这样 直接进入主题 对React文档案例进行分析 可以先给
  • redis7知识点总结

    文章目录 1 redis单线程为啥会这么快 2 redis数据类型和底层存储结构 2 1 string类型 2 1 1 SDS 2 2 hash类型 2 3 list类型 2 4 set类型 集合 2 5 zset类型 有序集合 2 6 z
  • linux下MQTT服务器(EMQX)搭建及paho.mqtt.c客户端开发

    前言 MQTT 是一种基于客户端服务端架构的发布 订阅模式的消息传输协议 它的设计思想是轻巧 开放 简单 规范 易于实现 这些特点使得它对很多场景来说都是很好的选择 特别是对于受限的环境如机器与 机器的通信 M2M 以及物联网环境 IoT
  • Typora 免费版下载安装(超简单亲测适用于Windows)与入门

    前言 Typora大家都知道 是一款好用的编辑器和阅读器 鬼鬼为大家找了一个可使用版本 安装过程十分简单 亲测有效 不浪费大家时间 现在将Typora分享给大家免费使用 下载链接在文章最后 目录 前言 一 Typora的介绍 MarkDow
  • 图的两种遍历方式dfs/bfs

    include
  • nodejs中express框架使用

    一 express介绍 express 是一个基于 Node js 平台的极简 灵活的 WEB 应用开发框架 express中文官网网址 https www expressjs com cn 简单来说 express 是一个封装好的工具包
  • C标准库的setlocale()用法笔记

    转自 http zyxhome org wp cc prog lang c stdlib setlocale usage note 在此向原文作者说声谢谢 若有读者看到文章转载时请写该转载地址 不要写我的BLOG地址 尊重他人的劳动成果 C
  • 计算机网络连接显示678是什么意思,宽带连接错误678,教您宽带连接出现错误提示代码678怎么解决...

    对电脑网络有资深了解的用户就知道 网络的错误代码678是宽带的故障代码之一 其含义是远程计算机无响应 而在网上罗列了一堆的可能性 其中涉及的一些高深的专业知识与判断 很多的用户都表示看得是云里雾里不知所云 下面 小编就给大家分享宽带连接出现
  • VScode连接服务器运行代码

    我的pycharm到期了 只能用VScode了 说一下怎么用VScode连接服务器 安装Remote SSH插件 设置 搜ssh 把这个打上对勾 这里建立新的连接 会让你输入 你需要输入username 地址 端口 输入完之后打开这个con
  • JS 判断当前浏览器是谷歌Google、火狐Firefox、Safari、Edge、Opera还是其他浏览器的方法

    JS 判断当前浏览器是谷歌Google 火狐Firefox Safari Edge还是其他浏览器的方法 如下 第一种 function detectBrowser const userAgent navigator userAgent if
  • Linux操作系统之C语言实现shell命令解释器项目

    文章目录 一 实现原理 二 具体实现过程 一 实现原理 普通命令 ls pwd cp clear 通过exec fork 内置命令 cd exit bash本身提供方法 调用自己的函数 不会产生子进程 二 具体实现过程 1 mybash项目
  • mockito

    mock 对接口返回值进行模拟数据 使用场景 1 协同开发的时候 需要调用未开发接口 模拟接口返回值数据 2 接口联调 网络不通的时候 把线上数据拷贝回来 模拟数据 添加mockito依赖
  • java用lambda函数排序,Java函数式编程-4.lambda表达式排序

    1 lambda表达式排序 咱们首先看几个比较常见的排序例子 基本数据类型的排序ide List list Arrays asList 1 3 2 5 4 list sort Comparator naturalOrder System o
  • cartographer更新地图-移除未完成的子图

    首先说明为什么要移除未完成的子图 因为如果不删除 每次更新都会保留以前未完成的子图 那时间累计数据量不断增长 不得了 overlapping submaps trimmer移除的只有已经完成的子图 那对于未完成的子图如何处理呢 首先在ove
  • tq210基本参数

    这个板子的核心板为core B 底板为tq210 board v4 1G ddr2 128Mx8pcs 1G slc flash K9K8G08 PMU TPS659101 使用系统自带的sd uboot 使用板子带的串口线 这个线与ok2
  • win10如何修改windows默认远程桌面端口号

    修改默认端口需要修改注册表 打开开始运行 输入regedit 进入注册编辑器 依次点击进入 HKEY LOCAL MACHINE SYSTEM CurrentContro1Set 接着找到 以下路径Control Tenninal Serv
  • NAT穿透 - P2P

    NAT穿透 P2P 一 NAT穿透 二 NAT分类 总结 一 NAT穿透 NAT穿透 即内网穿透 也称为打洞 其网络拓扑示例 二 NAT分类 完全锥型NAT 内网客户端映射到一个外部IP Port IP端口无限制 任意主机都可往该映射端口发