理解:思科设备上的网络地址翻译功能(NAT)功能

本文涉及的产品
公网NAT网关,每月750个小时 15CU
简介:

现在全世界的IPv4地址已经被宣布彻底耗尽,所以为全世界的计算机都分配一个被公共网络认可的IP地址,这将是不可能的事实!所有RFC1918定义了一个属于私有地址的空间供给企业或者家庭内部网络使用,目标在于缓解IPv4地址资源紧张的问题。被RFC1918定义的私有IP地址如下所示,它对于Internet而言,是无效的IP地址,此时就提出了一些关于网络访问的问题,比如:既然RFC1918所定义的IP地址是私有专用IP,公共网络不会认可这些IP地址,那么,使用私有专用IP的计算机如何访问Internet?企业内部使用了私有专有地址来架设服务器,如果这些服务器需要被公共网络(Internet)上的主机访问怎么办?


RFC1918所定义的私用网络专用IP地址的范围:

nA类私有IP地址:10.0.0.0-10.255.255.255

nB类私有IP地址:172.16.0.0-172.31.255.255

nC类私有IP地址:192.168.0.0-192.168.255.255


理解NAT的定义:

NAT是NetworkAddress Translation,网络地址转换的缩写,它的主要功能是将IP报头中的一个私有网络IP 地址转换为另一个被公共网络认可的IP 地址。它能够成功的解决私有网络访问公共网络的功能,通常在这种情况下是将多个企业内部的私有网络专用地址转换为企业出口网关的一个公共IP地址来访问Internet,这种解决方案,通过使用少量的公有IP 地址代表较多的私有网络专用IP 地址的方式,有助于缓解可用的IP地址空间的枯竭。同时可以提高企业内部的安全性,因为内部私有专用地址对外是透明的。NAT的形式大概被分为三种典型的应用:


n静态NAT

n动态NAT

nPAT



理解并取证:网络地址翻译(NAT)-静态NAT的工作原理

静态NAT,通常私有IP与公共IP成一对一的关系,当然如果结合端口使用,也可以形成一个IP对应多个IP的形式,通常应用在企业内部有某台服务器需要提供给Internet的用户访问,具体如下图 9.52所示为私有IP与公共IP成一对一的关系,事实上在这种环境中,并没有达到节约IP地址的目的,只是对外隐藏了真实的私有专用IP地址,满足了Internet用户访问内部服务器的可能,从某种程度上提高了安全性。还有一种方案是使用一对多关系的静态映射,这种解决方案可以达到节约IP地址的目的,但是必须结合TCP套接字一起使用,TCP套接字是一种IP地址加端口号来识别会话的方法,具体如下图9.53所示,下面分别来描述这两种静态NAT的工作原理。

075435237.png

理解一对一关系的静态NAT:

图9.52所示,企业需要将私有网络中的Web服务器(192.168.2.100)和FTP服务器(192.168.2.200)提供给公共网络部分的202.202.2.100访问,由于两台服务器使用的是私有专用IP,它对于公共网络无效,所以现在需要使用静态NAT将服务器的私有专用IP映射成公共IP地址,以方便公共网络的主机访问,将192.168.2.100与202.202.1.100形成一对一的映射关系;192.168.2.200与202.202.1.200也做相同的映射;公共主机202.202.2.100访问202.202.1.100时,就是在访问192.168.2.100的Web服务器;访问202.202.1.200时,就是在访问192.168.2.200的FTP服务器。在这种情况下每个私有地址对应一个公共IP,所以不需要对端口做任可映射,可简化客户端的访问方式,缺点就是没有达到节约IP地址的目的,关于一对一关系的静态NAT的具体配置就参看9.3.7演示: 使用静态NAT配置内部网络服务器提供对外服务能力。

075531843.png

理解一对多关系的静态NAT:

一对多关系的静态NAT就是将多个私有网络专用地址映射成一个公共IP地址的方式来实现公共网络的主机访问私有网络中的服务器,实现这种映射关系最大的问题的就多个私有专用IP映射成一个公共IP,当外部主机访问这个公共IP时,如何去识别是发送到哪台私有专用IP地址服务器的会话?这必须依赖于TCP套接字来确定,TCP套接字是一种IP地址加上端口来识别会话的方法,比如:图9.53所示环境中,将私有网络上的Web服务器(192.168.2.100)的80号端口通过静态NAT映射到公共地址202.202.1.100的8000号端口,将FTP服务器(192.168.2.200)的21端口通过静态NAT映射到公共地址202.202.1.100的2001号端口,虽然两个私有IP都映射到同一个公共IP,但是两个服务分别使用同一个IP的不同端口号,这样,当公共网络的主机202.202.2.100访问202.202.1.100的8000号端口时,就是访问私有网络上的WEB服务器,当访问202.202.100的2001号端口时,就是访问私有网络上的FTP服务器,这样做可以达到节约IP地址的目的,但是会增加客户端的访问难度,至少,客户端在访问时需要申明端口号,关于一对多关系的静态NAT如何使用TCP套接字来完成访问可以参看演示: 使用静态NAT配置内部网络服务器提供对外服务能力。


理解并取证:网络地址翻译(NAT)-动态NAT工作原理

动态NAT需要在NAT路由器上定义一个公共网络的地址池,如下图9.54所示,有一段被定义的公共IP地址池分别是202.202.1.100-202.202.1.102;当私有网络上的主机192.168.2.2-192.168.2.4要访问公共网络上的主机202.202.2.100时,NAT会动态的将每个私有网络专用IP地址转换成公共IP地址池中的IP地址,然后去访问公共网络上的主机202.220.2.100,比如:192.168.2.2将被翻译成202.202.1.100;192.168.2.3将被翻译成202.202.1.101;192.168.2.4将被翻译成202.202.1.102;这种动态的NAT翻译,私有IP地址与公共IP地址成一对一的关系,事实上,并没有达到节约IP地址的目的,但是它对解决大型网络合并后,产生的重叠地址冲突是一种很好的解决方案,注意:动态NAT定义的公共地址池中IP地址的数量,应该和私有网络专用地址的数量相同,如果,公共地址池中IP地址的数量少于私有网络专用地址的数量,那么多余的私有网络专用地址将无法访问公共网络,因为公共地址池中的IP与私有专用IP的数量成一对一关系。如何配置动态NAT可以参看9.3.6 演示:动态NAT完成网络地址翻译。

075706901.png

理解并取证:网络地址翻译(NAT)-PAT工作原理

PAT(port addressTranslation 端口地址转换)它是属于NAT的一种,严格的讲,它属于动态NAT的一种类型,它产生的目标是在大量使用私有网络专用地址的企业网络中代理这些主机访问公共网络,比如:访问Internet。它的最大优势就是将企业网络内部使用的全部私有网络专用地址转换成一个公共IP地址,通常是NAT路由器外部接口的IP地址,然后代理它们去访问Internet,这样可以最大成程度节省访问Internet的地址成本,因为在使用PAT时整个企业访问公共网络只需要一个公共IP地址。但是现在最大的问题是:当发生众多私有网络主机同时访问Internet时,NAT路由器如何去识别不同的会话?

现在以两台使用私有网络专用IP的主机使用PAT访问Internet的情况,理解PAT的工作原理,以及如何去识别同一时刻众多主机产生的不同会话,如下图 9.55所示,当私有网络主机192.168.2.100需要访问202.202.2.100这台公共网络上的主机的WEB服务时,首先在192.168.2.100这台主机上会产生一个源IP地址是192.168.2.100;源端口是1051(通常随机生成);目标IP是202.202.2.100;目标端口是80的IP报文,当该报文送达NAT路由器后,NAT路由器将把原始报文中的源IP地址转换成自己的NAT外部接口上的IP地址202.202.1.1(当然,也可以自己定义另一个可供使用的公共IP地址),同时将原始报文中的源端口1051转换成另一个源端口1053;并且NAT路由器会记录这样一个转换的过程,方便会话返回时,可以在众多的会话中识别出,哪一个具体的会话属于某台具体的私有网络主机,因为在私有网络专用主机192.168.2.100发起对公共网络访问的同时,可能还有其它的私有网络专用主机192.168.2.200同时发起对公共网络的会话,而PAT的翻译过程,会将192.168.2.100和192.168.2.200的私有主机IP都翻译成202.202.1.1,那么,当会话从公共网络上返回时,NAT路由器怎么知道,哪个会话是192.168.2.100;哪个会话又是192.168.2.200的?当翻译了端口后,就使用了不同的TCP套接字,如下图所示,202.202.1.1+1053这就是192.168.2.100的会话,该会话会被返回给私有主机A;202.202.1.1+1054 这就是192.168.2.200的会话,该会话会被返回给私有主机B。关于PAT的配置可参看演示: NAT-PAT代理内部网络访问Internet。

075801971.png

注意:在使用PAT的过程中,目标IP地址和目标端口号码在通信的过程中将一直保持不变,将永远不被翻译,PAT翻译的始终是源IP地址和源端口号!



本文转自 kingsir827 51CTO博客,原文链接:http://blog.51cto.com/7658423/1318873,如需转载请自行联系原作者

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
3月前
|
存储 运维 API
HPE OneView 10.0 - HPE 服务器、存储和网络设备集中管理软件
HPE OneView 10.0 - HPE 服务器、存储和网络设备集中管理软件
65 1
|
17天前
|
存储 监控 Linux
Dell OpenManage Enterprise 4.5 - Dell 服务器、存储和网络设备集中管理软件
Dell OpenManage Enterprise 4.5 - Dell 服务器、存储和网络设备集中管理软件
26 0
|
2月前
|
存储
WGLOG日志管理系统可以采集网络设备的日志吗
WGLOG日志审计系统提供开放接口,支持外部获取日志内容后发送至该接口,实现日志的存储与分析。详情请访问:https://www.wgstart.com/wglog/docs9.html
|
4月前
|
存储 安全 Linux
Dell OpenManage Enterprise 4.4 - Dell 服务器、存储和网络设备集中管理软件
Dell OpenManage Enterprise 4.4 - Dell 服务器、存储和网络设备集中管理软件
108 4
Dell OpenManage Enterprise 4.4 - Dell 服务器、存储和网络设备集中管理软件
|
4月前
|
网络协议 安全 网络安全
NAT网络地址转换
NAT(网络地址转换)是一种关键的网络技术,通过将内部私有地址转换为外部公网地址,实现多设备共享单一公网IP上网。它不仅解决了IPv4地址不足的问题,还增强了网络安全,隐藏了内部网络结构。NAT主要分为静态NAT、动态NAT和NAPT(网络地址端口转换)三种类型,广泛应用于家庭和企业网络中。然而,NAT也存在对某些应用不友好、增加延迟及与IPv6不兼容等缺点。
626 14
|
4月前
|
存储 监控 算法
公司内部网络监控中的二叉搜索树算法:基于 Node.js 的实时设备状态管理
在数字化办公生态系统中,公司内部网络监控已成为企业信息安全管理体系的核心构成要素。随着局域网内终端设备数量呈指数级增长,实现设备状态的实时追踪与异常节点的快速定位,已成为亟待解决的关键技术难题。传统线性数据结构在处理动态更新的设备信息时,存在检索效率低下的固有缺陷;而树形数据结构因其天然的分层特性与高效的检索机制,逐渐成为网络监控领域的研究热点。本文以二叉搜索树(Binary Search Tree, BST)作为研究对象,系统探讨其在公司内部网络监控场景中的应用机制,并基于 Node.js 平台构建一套具备实时更新与快速查询功能的设备状态管理算法框架。
108 3
|
4月前
|
安全 Ubuntu Linux
Nipper 3.8.0 for Windows & Linux - 网络设备漏洞评估
Nipper 3.8.0 for Windows & Linux - 网络设备漏洞评估
131 0
Nipper 3.8.0 for Windows & Linux - 网络设备漏洞评估
|
5月前
|
XML 安全 网络安全
Nipper 3.7.0 Windows x64 - 网络设备漏洞评估
Nipper 3.7.0 Windows x64 - 网络设备漏洞评估
104 0
Nipper 3.7.0 Windows x64 - 网络设备漏洞评估
|
7月前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
174 20
|
8月前
|
安全 Linux 网络安全
利用Python脚本自动备份网络设备配置
通过本文的介绍,我们了解了如何利用Python脚本自动备份网络设备配置。该脚本使用 `paramiko`库通过SSH连接到设备,获取并保存配置文件。通过定时任务调度,可以实现定期自动备份,确保网络设备配置的安全和可用。希望这些内容能够帮助你在实际工作中实现网络设备的自动化备份。
287 14

热门文章

最新文章