网络地址转换

概述

无NAT网络

带NAT网络

1990年代中期,NAT是作为一种解决IPv4地址短缺以避免保留IP地址困难的方案而流行起来的。网络地址转换在很多国家都有很广泛的使用。所以NAT就成了家庭和小型办公室网络连接上的路由器的一个标准特征,因为对他们来说,申请独立的IP地址的代价要高于所带来的效益。

在一个典型的配置中,一个本地网络使用一个专有网络的指定子网(比如192.168.x.x或10.x.x.x)和连在这个网络上的一个路由器。这个路由器占有这个网络地址空间的一个专有地址(比如192.168.0.1),同时它还通过一个或多个因特网服务提供商提供的公有的IP地址(叫做“过载”NAT) 连接到因特网上。当信息由本地网络向因特网传递时,源地址被立即从专有地址转换为公用地址。由路由器跟踪每个连接上的基本数据,主要是目的地址和端口。当 有回复返回路由器时,它通过输出阶段记录的连接跟踪数据来决定该转发给内部网的哪个主机;如果有多个公用地址可用,当数据包返回时,TCPUDP客户机的端口号可以用来分解数据包。对于因特网上的一个系统,路由器本身充当通信的源和目的地址。

流行在网络上的一种看法认为,IPv6的广泛采用将使得NAT不再需要,因为NAT只是一个处理IPv4的地址空间不足的方法。

缺点

在一个具有NAT功能的路由器下的主机并没有建立真正的IP地址,并且不能参与一些因特网协议。一些需要初始化从外部网络建立的TCP连接和使用无状态协议,比如UDP的服务将被中断。除非NAT路由器作一些具体的努力,否则送来的数据包将不能到达正确的目的地址。一些协议有时可以在应用层网关(见下)的辅助下,在参与NAT的主机之间容纳一个NAT的实例,比如FTP。NAT也会使安全协议变的复杂,比如IPsec

端对端连接是被IAB委员会(Internet Architecture Board)支持的核心因特网协议之一,因此有些人据此认为NAT是对公用因特网的一个破坏。一些因特网服务提供商只向他们的客户提供本地IP地址,所以他们必须通过NAT来访问ISP网络以外的服务,并且这些公司能不能算的上真正的提供了因特网服务的话题也被谈起。

NAT除了带来方便和代价之外,对全双工连接支持的缺少在一些情况下可以看作是一个有好处的特征而不是一个限制。在一定程度上,NAT依赖于本地网 络上的一台机器来初始化和路由器另一边的主机的任何连接,它可以阻止外部网络上的主机的恶意活动。这样就可以阻止网络蠕虫病毒来提高本地系统的可靠性,阻 挡恶意浏览来提高本地系统的私密性。很多具有NAT功能的防火墙都是使用这种功能来提供核心保护的。另外,它也为UDP的跨局域网的传输提供了方便。

基本NAT和端口号转换

基本网络地址转换(Basic NAT)

这一种也可称作NAT或“静态NAT”。它在技术上比较简单一点,仅支持地址转换,不支持端口映射,这就需要对每一个当前连接都要对应一个IP地址,因此要维护一个公网的地址池。宽带(broadband)路由器通常使用这种方式来允许一台指定的计算机去接收所有的外部链接,甚至当路由器本身只有一个可用外部IP时也如此,这台路由器有时也被标记为DMZ主机

基本NAT要维护一个NAT表,结构如下。

内网IP 外网IP
192.168.1.55 219.152.168.222
192.168.1.59 219.152.168.223
192.168.1.155 219.152.168.224

网络地址端口转换(NAPT)

这种方式支持端口的映射并允许多台主机共享一个公用IP地址。

支持端口转换的NAT又可以分为两类:源地址转换和目的地址转换NAT。前一种情形下发起连接的计算机的IP地址将会被重写,使得内网主机发出的数 据包能够到达外网主机。后一种情况下被连接计算机的IP地址将被重写,使得外网主机发出的数据包能够到达内网主机。实际上,以上两种方式通常会一起使用以 支持双向通信。

NAPT也要维护一个NAT表,结构如下。

内网IP 外网IP
192.168.1.55:5566 219.152.168.222:9200
192.168.1.59:80 219.152.168.222:9201
192.168.1.59:4465 219.152.168.222:9202

受到NAT影响的应用程序

一些高层协议(比如FTPQuakeSIP)是在IP包的有效数据内发送网络层 (第三层)信息的。比如,主动模式FTP使用单独的端口分别来控制命令传输和数据传输。当请求一个文件传输时,主机在发送请求的同时也通知对方自己想要在哪个端口接受数据。但是,如果主机是在一个简单的NAT防火墙后发送的请求,那么由于端口的映射将会使对方接收到的信息无效。

一个应用层网关(Application Layer Gateway或ALG)可以修正这个问题。运行在NAT防火墙设备上的ALG软件模块可以更新任何由地址转换而导致无效的信息。显然,ALG需要明白它所要修正的上层协议,所以每个有这种问题的协议都需要有一个单独的ALG。

但是,除FTP外的大多数传统的客户机-服务器协议不需要发送网络层(第三层)信息,也就不需要ALG。

这个问题的另一个可能的解决方法是使用像STUN这样的技术,但是这只针对建立在UDP上的高层协议,并且需要它内建这种技术。这种技术对于对称NAT也是无效的。还有一种可能的方案是UPnP,但它需要和NAT设备配合起来使用

不同类型的NAT

更进一步的信息请参见外部链接

Full cone NAT,亦即著名的一对一(one-to-one)NAT

  • 一旦一个内部地址(iAddr:port1)映射到外部地址(eAddr:port2),所有发自iAddr:port1的包都经由eAddr:port2向外发送。任意外部主机都能通过给eAddr:port2发包到达iAddr:port1

Address-Restricted cone NAT

  • 一旦一个内部地址(iAddr:port1)映射到外部地址(eAddr:port2),所有发自iAddr:port1的包都经由 eAddr:port2向外发送。任意外部主机(hostAddr:any)都能通过给eAddr:port2发包到达iAddr:port1的前提 是:iAddr:port1之前发送过包到hostAddr:any. "any"也就是说端口不受限制

Port-Restricted cone NAT

类似受限制锥形NAT(Restricted cone NAT),但是还有端口限制。

  • 一旦一个内部地址(iAddr:port1)映射到外部地址(eAddr:port2),所有发自iAddr:port1的包都经由 eAddr:port2向外发送。一个外部主机(hostAddr:port3)能够发包到达iAddr:port1的前提是:iAddr:port1之 前发送过包到hostAddr:port3.

Symmetric NAT(对称NAT)

  • 每一个来自相同内部IP与端口,到一个特定目的地地址和端口的请求,都映射到一个独特的外部IP地址和端口。

    同一内部IP与端口发到不同的目的地和端口的信息包,都使用不同的映射
  • 只有曾经收到过内部主机封包的外部主机,才能够把封包发回

NAT其他用途实例

  • 负载均衡:目的地址转换NAT可以重定向一些服务器的连接到其他随机选定的服务器。
  • 失效终结:目的地址转换NAT可以用来提供高可靠性的服务。如果一个系统有一台通过路由器访问的关键服务器,一旦路由器检测到该服务器宕机,它可以使用目的地址转换NAT透明的把连接转移到一个备份服务器上。
  • 透明代理:NAT可以把连接到因特网的HTTP连接重定向到一个指定的HTTP代理服务器以缓存数据和过滤请求。一些因特网服务提供商就使用这种技术来减少带宽的使用而不用让他们的客户配置他们的浏览器支持代理连接。
时间: 2024-10-20 03:03:36

网络地址转换的相关文章

网络地址转换NAT

一.网络地址转换NAT: 在专用网内部的一些主机本来已经分配到了本地IP地址,但现在想和Internet上的主机进行通信,最简单的办法就是再申请一些全球的IP地址,但是全球的IPv4的地址已经不多了,所以采用了一种方法是网络地址转换. 在专用网连接到Internet的路由器上安装NAT软件,把装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球IP地址,才能和Internet连接.所有使用本地地址的主机和Internet进行通信时,都要在NAT路由器上经本地地址转换成全球的IP地址

网络地址转换(NAT)的原理与配置

随着网络的发展,公用IP地址的需求与日俱增.为了缓解公用IP地址的不足,并且保护公司内部服务器的私网地址,可以使用NAT(Network Address Translation,网络地址转换)技术将私网地址转化成为公网地址,缓解IP地址的不足,并且隐藏内部服务器的私网地址. NAT的概述与现实方式 1. NAT概念 网络地址转换(NAT)通过将内部网络的私有IP地址翻译成全球唯一的公网IP地址,使内部网络可以连接到互联网等外部网络上,广泛应用于各种类型的互联网接入方式和各种类型的网络中.原因很简

第11章 拾遗1:网络地址转换(NAT)和端口映射

1. 网络地址转换(NAT) 1.1 NAT的应用场景 (1)应用场景:允许将私有IP地址映射到公网地址,以减缓IP地址空间的消耗 ①需要连接Internet,但主机没有公网IP地址 ②更换了一个新的ISP,需要重新组织网络时,可使用NAT转换 ③需要合并两个具有相同网络地址的内网 (2)NAT的优缺点 优点 缺点 ①节约合法的公网IP地址 ②减少地址重叠现象 ③增加连接Internet的灵活性 ④增加内网的安全性 ①地址转换产生交换延迟,也就是消耗路由器性能. ②无法进行端到端的IP跟踪 ③某

网络地址转换实验

1.概念 网络地址转换用于控制网络封包的表面源或所需目标地址. 基于主机的简单防火墙只具有 INPUT 链中的规则,以 ACCEPT 或 REJECT 封包,但是在专用(不可路由)网络的网关或路由器上,通常使用 PREROUTING 和 POSTROUTING 链修改封包.nat 表使用三条链: PREROUTING . OUTPUT 和 POSTROUTING .当路由器修改通过其的网络通信的源或目标 IP 地址或端口时,进行网络地址转换.它用于映射使用单个 IP 地址的计算机网络,以使其可以

NAT网络地址转换模拟过程

原理图,如图1 图1 以下为配置NAT网络地址转换的实验: eNSP模拟图,如图2 图2 Step1.给路由器的每个接口赋予一个地址,如图3,图4 图3 图4 AR1和AR2中添加路由表项,如图5,图6 图5 图6 在IP为202.16.3.4的主机处抓包,结果如图7所示,当IP为专用地址的192.168.1.10的主机访问全球IP地址202.16.3.4的主机,经过NAT路由器转换后使用公网IP地址访问公网的IP. 图7

2016.7.9 计算机网络复习要点第四章之虚拟专用网VPN和网络地址转换NAT

1.虚拟专用网VPN (1)一个机构内,对于那些仅在本机构内部使用的计算机就可以由本季候自行分配其IP地址,让这些计算机使用仅在本机构有效的IP地址(本地地址),不需要申请全球唯一的IP地址(全球地址): (2)专用地址:这些地址只能用于一个机构的内部通信,而不能用于和因特网上的主机通信,换言之,专用地址只能用作本地地址而不能用作全球地址: (3)在因特网中的路由器,对目的地址是专用地址的数据报一律不转发: (4)三个专用地址: **10.0.0.0到10.255.255.255(或10.0.0

代理服务器与网络地址转换NAT

代理服务器: 代理服务器(proxy server)是一种网络实体,它又称为万维网高速缓存(Web cache).代理服务器把最近的一些请求和响应暂存在本地磁盘中.当新请求到达时,若代理服务器发现这个请求和暂时存放的请求相同,就返回暂存的响应,而不需要按URL的地址再次去因特网防卫该资源. 代理服务器可在客户端或服务器端工作,也可在中间系统工作. 代理服务器(Proxy Server)是一种重要的服务器安全功能,它的工作主要在开放系统互联(OSI)模型的会话层,从而起到防火墙的作用.代理服务器大

Ubuntu搭建ssh连接(连接方式:桥接网卡、网络地址转换(NAT))

操作系统:Ubuntu Server 16.04.2 SSH软件:Putty(远程连接工具,视本机操作系统选择对应版本的putty) ----------------------------------网络连接方式:桥接网卡----------------------------------- 第一步: 1)安装openssh-server,命令如下: sudo apt install openssh-server 因为我本机已经安装过openssh-server,所以截图与首次安装截图不一致(

NAT网络地址转换

实验11:NAT网络地址转换 一. 实验目标 通过Cisco Packet Tracer来实现NAT网络地址转换的三种转换:静态转换.动态转换和端口多路复用 . 二.实验环境和拓扑 window 7操作系统,Cisco Packet Tracer软件. 拓扑结构见下图: 三.实验步骤 1.按照拓扑结构连接网络,并配置各个接口的IP,子网掩码与网关.其中路由router 2不要设置路由表,路由router 1设置默认路由. 2.实现NAT静态转换 全局模式:ip nat inside source

路由器NAT网络地址转换

实验名称:配置静态网络地址转换 实验拓扑: 实验步骤: (1)设置路由器接口地址,主机和服务器的IP地址及网关 (2)配置路由器Router0的静态地址映射 (3)验证 总结:实验只需对路由器1进行设置,因为对地址进行转换之后,对路由器2来说就相当于一个直连的路由,所以不需对路由器2进行配置 实验名称:动态网络地址转换 实验拓扑: 实验步骤: (1)设置路由器接口地址,主机和服务器的IP地址及网关 (2)配置路由器Router0的动态地址映射 (3)验证 总结:实验中遇到的问题就是容易忘记访问控