近期评论

NAT协议深入分析

概述

NAT:net address translate即网络地址翻译,通常叫地址转换协议,深入分析其原理后我更愿意叫它地址改变协议。

这个协议实在是普遍,其原理机制相关的基本资料也可以在网络随意找到,那我为什么还要再研究一遍呢?显然我并不觉得这个协议是个很简单的协议。

NAT分类:
一、单地址转换
1、一对多映射
家用的简单路由器就是个例子:

a、当内网客户端发起请求时,构造的五元组:源IP,目的IP,源端口,目的端口,协议。

b、来自内网的数据经过家用路由器时,五元组的源IP转换为家用路由器的临时公网地址,源端口转换为动态随机产生的端口。

c、外网服务器收到数据请求时,处理并把结果返回给路由器,五元组的源IP为外网服务器IP,源端口为外网服务器开放端口和客户端请求的端口一样,目的IP是家用路由器的公网地址,目的端口是家用路由器的动态随机端口。

d、来自外网的数据经过家用路由器时,五元组的源IP,源端口不变,目的IP转换为内网客户端的IP,目的端口转换为内网客户端发起请求时动态随机端口。


2、一对一映射
一对一映射和一对多映射,地址改变也是发生在路由器发给外网服务器和发给内网客户端时。只不过端口固定了。
一对一映射分为端口映射,一对一地址映射,

a、端口映射的外网端口和内网端口可以相同也可以不同,但只能对配置了的端口有效。端口映射可以使路由器的外网地址不同的端口对应内网不同的IP地址和任意端口。

b、一对一地址映射外网端口和内网端口肯定是相同,外网的任意端口对应内网单独一个确定的IP地址的同一个端口。这时外网路由器和内网客户端在远端主机看来完全一样。

二、双地址转换
通常在F5,高端防火墙上有这个功能
双地址转换是指客户端请求的数据包经过网络设备后,五元组中的三个元素:源IP转换为设备的内网地址,源端口转换为设备的动态随机端口,目的IP转换为内网服务器的IP,
并且远端服务器发出数据包经过该网络设备后,五元组中的源IP转换为设备的外网地址,目的IP转换为客户端的IP地址,目的端口转换为客户端的动态随机端口。

3,680 Responses to “NAT协议深入分析”