技术编程|智汇华云 | VPP全锥型NAT实现
本文插图
本期智汇华云 , 华云数据特别邀请到华云数据网络组开发工程师许猛为大家带来“VPP全锥型NAT实现” 。
内容介绍
在现实Internet网络环境中 , 大多数计算机主机都位于防火墙或NAT之后 , 只有少部分主机能够直接接入Internet 。 很多时候 , 我们希望网络中的两台主机能够直接进行通信 , 即所谓的P2P通信 , 而不需要其他公共服务器的中转 。 由于主机可能位于防火墙或NAT之后 , 在进行P2P通信之前 , 我们需要进行检测以确认它们之间能否进行P2P通信以及如何通信 。 这种技术通常称为NAT穿透(NAT Traversal) 。 最常见的NAT穿透是基于UDP的技术 , 如RFC3489中定义的STUN协议 。
RFC5780为了检测NAT类型 , 对NAT定义了三种映射规则Mapping跟Filtering , 组合形成9种类型 , 包含RFC3489种定义的4种类型:Full Cone NAT、Restricted Cone NAT、Port Restricted Cone NAT、Symmetric NAT 。
根据NAT实现原理 , 对称NAT安全性最高 , 全锥形NAT安全性最低 , 这也意味着对称NAT实现P2P条件最苛刻 。 VPP作为网络转发平面 , VPP默认支持对称型NAT , 要实现P2P必须要求对方为全锥形NAT , 在现实网络环境中 , 网络路径中几乎不存在 , 为了最大程度支持P2P , VPP实现全锥形NAT , 这种模式下 , 很适合类似视频推流里P2P 。
NAT类型分类
RFC3489NAT的UDP的实现方式有4种类型:
Full Cone NAT:
完全锥形NAT , 所有从同一个内网IP和端口号发送过来的请求都会被映射成同一个外网IP和端口号 , 并且任何一个外网主机都可以通过这个映射的外网IP和端口号向这台内网主机发送包 。
Restricted Cone NAT:
限制锥形NAT , 它也是所有从同一个内网IP和端口号发送过来的请求都会被映射成同一个外网IP和端口号 。 与完全锥形不同的是 , 外网主机只能够向先前已经向它发送过数据包的内网主机发送包 。
Port Restricted Cone NAT:
端口限制锥形NAT , 与限制锥形NAT很相似 , 只不过它包括端口号 。 也就是说 , 一台IP地址X和端口P的外网主机想给内网主机发送包 , 必须是这台内网主机先前已经给这个IP地址X和端口P发送过数据包 。
Symmetric NAT:
对称NAT , 所有从同一个内网IP和端口号发送到一个特定的目的IP和端口号的请求 , 都会被映射到同一个IP和端口号 。 如果同一台主机使用相同的源地址和端口号发送包 , 但是发往不同的目的地 , NAT将会使用不同的映射 。 此外 , 只有收到数据的外网主机才可以反过来向内网主机发送包 。
RFC5780中9种NAT类型:
本文插图
下面介绍一种Mapping Behavior(映射规则)和 Fieltering Behavior(过滤规则):
Mapping Behavior:
Endpoint-Independent Mapping:
对于一个内网的EedpointP , 其对应的外网EndpointG是基本固定的 , 不会随着通讯外部主机的不同而变化 。
Filtering Behavior:
Endpoint-Independent Filtering:
对于这种过滤型 , NAT在主机的一个外网EndpointG1收到包 , 只要找到与之对应的内网EndpointP1 , NAT就会转发这个资料包给相应的内网EndpointP1 , 不管这个资料包的来源是哪里 。 (安全性最低 , 穿透性最高)
VPPFull Cone NAT
VPP通过三元组(其实是四元组 , fib用来做)记录内网IP跟出口网关的对应关系以及协议 , 而不记录对端IP以及PORT , 所以回程不会检查过滤源IP及PORT 。
简化版NAT报文处理流程如下 , 文件in2out.c out2in.c:
1、内网发起的对外请求
推荐阅读
- 摄像头|小米截胡中兴屏下摄像头技术,小米研发还是供应链技术?
- 马斯克|马斯克用活猪演示脑机接口技术:实时读取猪脑信息 心灵感应成真了
- 三防|带你了解三防手持终端的秘密
- 第三|原创 小米发布第三代屏下相机技术,或将在Mix 4上首秀?
- 海信|首个新兴显示技术分标委成立 海信牵头制定国标
- 中年|Python编程语言有什么独特的优势呢?
- |马斯克用活猪演示脑机技术,他希望今年年底前能在人体内植入
- 互联网的放大镜|小米截胡中兴屏下摄像头技术,小米研发还是供应链技术?
- 新机发布|原创 小米发布第三代屏下相机技术,或将在Mix 4上首秀?
- 技术|最新《中国禁止出口限制出口技术目录》发布,新增操作系统、密码芯片安全技术
