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

1. 网络地址转换(NAT)

1.1 NAT的应用场景

(1)应用场景:允许将私有IP地址映射到公网地址,以减缓IP地址空间的消耗

  ①需要连接Internet,但主机没有公网IP地址

  ②更换了一个新的ISP,需要重新组织网络时,可使用NAT转换

  ③需要合并两个具有相同网络地址的内网

(2)NAT的优缺点


优点


缺点


①节约合法的公网IP地址

②减少地址重叠现象

③增加连接Internet的灵活性

④增加内网的安全性


①地址转换产生交换延迟,也就是消耗路由器性能。

②无法进行端到端的IP跟踪

③某些应用无法在NAT的网络中运行

1.2 NAT的类型

(1)静态NAT

  指将内部网络的私有IP地址转换为公有IP地址IP地址对是一对一的,即两个地址的映射关系己绑定死了。某个私有IP地址只转换为某个公有IP地址,借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问

(2)动态NAT

  ①指将内部网络的私有IP地址转换为公用IP地址时,IP地址对是不确定的,而是随机的。所有被授权访问上Internet的私有IP地址可随机转换为任何指定的合法IP地址池中一个IP地址。如果地址池的IP地址做映射用完了,剩余的内网计算机将不能再访问外网(本质上,也是一对一的关系,只不过这种关系是动态绑定的!)。

  ②当要与外界进行通信的内部节点,如果还没有建立转换映射,边缘路由器将会动态的从公网IP地址池中选择IP对内部地址进行转化。每个转换条目在连接建立时动态建立,而在连接终止时会被回收因此,外网的计算机不能访问内网的计算机(因为映射关系是内网计算机发起且连接终止时就回收了!)

  ③动态NAT,一般用在当内部网络中只有少数节点与外界建立连接的场合时,因为只有少数的内部地址需要被转化成全局地址,可以减少对合法地址的需求。

(3)PAT

  ①这是最流行的NAT配置类型,实际上是动态NAT的一种形式,它映射多个私有网IP地址到一个公网IP地址,通过使用不同的端口来区分内网主机,被称为端口地址转换(PAT,Port Address Translation)。(见后面实验部分的分析,怎么用端口区分内网主机?)

  ②使用PAT时,internet的主机无法访问内网主机。如果需要这种访问,则需要做端口映射(注意,端口映射和端口地址转换PAT是两个概念PAT是使得多个内网主机可以通过一个公网IP同时访问Internet,而端口映射则可以让internet主机访问内网主机!见后面《端口映射》的内容

2. 实现网络地址转换

2.1 配置静态NAT

(1)网络拓扑

映射关系:PCx(10.0.0.y)映射到131.107.0.y;

(2)静态NAT映射数据包转换过程

  ①PC0访问Internet的Server,数据包经CPE路由器,根据配置的静态映射,数据包的源地址被131.107.0.2地址替换

  ②Server向131.107.0.2发送返回的数据包,在进入内网时,根据静态映射表,将会使用PC0的IP地址替换数据包的目标地址(10.0.0.2)。

(3)在CPE路由器上配置静态映射表

//1. 静态NAT
Router#conf t
Router(config)#access-list 12 permit 192.168.1.0 0.0.0.255 //定义ACL,只允许192.168.1.0/24网段
Router(config)#line vty 0 15  //进入VTY虚接口,0和15分别表示起始和结束的vty的0-15号接口。
Router(config-line)#access-class 12 in  //将编号为12的ACL绑定到vty
Router(config-line)#

CPE#conf t
CPE(config)#ip nat inside source static 10.0.0.2 131.107.0.2
CPE(config)#ip nat inside source static 10.0.0.3 131.107.0.3
CPE(config)#ip nat inside source static 10.0.0.4 131.107.0.4
CPE(config)#ip nat inside source static 10.0.0.5 131.107.0.5
CPE(config)#ip nat inside source static 10.0.0.6 131.107.0.6
CPE(config)#interface fastEthernet 0/1
CPE(config-if)#ip nat inside                //指定该接口为NAT的内部端口
CPE(config-if)#ex
CPE(config)#interface serial 0/0
CPE(config-if)#ip nat outside               //指定该接口为NAT的外网端口
CPE(config-if)#ex
CPE(config)#exit
CPE#debug ip nat                            //让路由器显示NAT信息

(4)验证:PCO主机ping 202.99.160.2,同时观察CPE路由器显示的NAT信息(要事先debug ip NAT开启这个功能!)。同时,由于配置了静态映射,外网的计算机可能通过访问131.107.0.6直接访问内网的WebServer的网站。

2.2 配置动态NAT

(1)网络拓扑

(2)在路由器上配置动态NAT

//1. 在CPE路由器上配置动态NAT
CPE>en
CPE#config t
//定义ACL,如果内网有多个网段需要NAT,则需要在ACL都添加上
CPE(config)#access-list 10 permit 10.0.0.0 0.0.0.255
//指定公网地址池:名称为mypool,起始和结束地址以及子网掩码
CPE(config)#ip nat pool mypool 131.107.0.1 131.107.0.3 netmask 255.255.255.0
//将公网地址池与ACL绑定
CPE(config)#ip nat inside source list 10 pool mypool
CPE(config)#interface serial 0/0
CPE(config-if)#ip nat outside    //指定S0/0为NAT的外网接口
CPE(config-if)#ex
CPE(config)#interface fastEthernet 0/1
CPE(config-if)#ip nat inside     //指定f0/1为NAT的内网接口
CPE(config-if)#exit
CPE(config)#exit

//2. 在路由器上查看NAT配置状态
CPE#show ip nat statistics 

//3. 查看NAT地址转换信息(要先从内网ping外网主机)
CPE#show ip nat translations

//4. 清转转换表中的NAT条目
CPE#clear ip nat translations *

(3)验证:让pc0、pc1、pc2、pc3四台计算机同时ping 202.99.160.2。(只有3台能ping通,因为地址池只有3个公网IP可被拿来映射!)

2.3 配置PAT

(1)网络拓扑图(与前面例相同)

(2)端口地址转换(PAT):源端口的替换

  ①假设PC0和PC1都是使用1723端口访问外网的Server。如果数据包只做地址转换(即端口不转换)那么返回的数据目标地址都是131.107.0.1,目标端口都是1723路由器就没有办法确定这个数据包应发送给PC0还是PC1

  ②如果使用一个公网IP地址让很多内网计算机访问Internet,必须由路由器对访问Internet的数据包进行统一的源端口替换,将源端口替换成不同的端口出去(如4000、4001),这样路由器就可以根据返回的数据包目标端口确定数据包应该转发给哪一个内网计算机,这就是端口地址转换的原理

(3)在路由器上配置PAT

//1. 在CPE路由器上配置PAT
CPE>en
CPE#config t
//将内网需要PAT出去的网段添加到ACL中
CPE(config)#access-list 10 permit 10.0.0.0 0.0.0.255
//添加公网IP地址池(名称为mypool,前后IP一样,即只有一个公网IP)。
CPE(config)#ip nat pool mypool 131.107.0.1 131.107.0.1 netmask 255.255.255.0
//将公网地址池与ACL绑定(注意overload参数会启用PAT)
CPE(config)#ip nat inside source list 10 pool mypool overload
CPE(config)#interface serial 0/0
CPE(config-if)#ip nat outside    //指定NAT的外网接口
CPE(config-if)#ex
CPE(config)#interface fastEthernet 0/1
CPE(config-if)#ip nat inside     //指定NAT的内网接口
CPE(config-if)#ex
CPE(config)#ex
CPE#show ip nat statistics     //查看NAT配置状态
Total translations: 0 (0 static, 0 dynamic, 0 extended)
Outside Interfaces: Serial0/0
Inside Interfaces: FastEthernet0/1
Hits: 0  Misses: 0
Expired translations: 0
Dynamic mappings:
-- Inside Source
access-list 10 pool mypool refCount 0
 pool mypool: netmask 255.255.255.0
       start 131.107.0.1 end 131.107.0.1
       type generic, total addresses 1 , allocated 0 (0%), misses 0
CPE#

(4)验证:使用内网中的任何一台主机都可以ping通internet上的server。

2.4 配置端口映射

(1)PAT存在的的问题通过配置PAT,只能实现内网主机使用公网IP地址访问internet,但internet的主机无法访问内网主机(如内网的WebServer),这时可以通过端口映射来解决这一问题

(2)网络拓扑图

(3)在路由器上配置端口映射

//1. 在CPE路由器上配置端口映射
CPE>en
CPE#conf t
//静态端口映射
CPE(config)#ip nat inside source static tcp 10.0.0.5 80 131.107.0.1 80
CPE(config)#ip nat inside source static tcp 10.0.0.6 80 131.107.0.1 81
CPE(config)#ip nat inside source static tcp 10.0.0.4 25 131.107.0.1 25
CPE(config)#ip nat inside source static tcp 10.0.0.4 110 131.107.0.1 110
CPE(config)#interface fastEthernet 0/1
CPE(config-if)#ip nat inside     //指定NAT的内网接口
CPE(config-if)#ex
CPE(config)#interface serial 0/0
CPE(config-if)#ip nat outside    //指定NAT的外网接口
CPE(config-if)#ex
CPE(config)#

(4)验证:通过internet上的PC5访问内网的WebServer、邮件服务器。

时间: 2024-12-21 17:23:41

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

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

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

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

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

Packet Tracer 5.2实验(十四) 网络地址转换NAT配置

Packet Tracer 5.2实验(十四) 网络地址转换NAT配置 一.实验目标 理解NAT网络地址转换的原理及功能: 掌握静态NAT的配置,实现局域网访问互联网: 二.实验背景 公司欲发布WWW服务,现要求将内网Web服务器IP地址映射为全局IP地址,实现外部网络可访问公司内部Web服务器. 三.技术原理 网络地址转换NAT(Network Address Translation),被广泛应用于各种类型Internet接入方式和各种类型的网络中.原因很简单,NAT不仅完美解决了IP地址不足

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

一.代理服务器 1.代理服务器的基本概念 代理服务器是网络信息的中转站,简单来说就是个人网络和因特网服务商之间的代理机构,它负责转发合法的网络信息,并对转发进行控制和登记. 在使用网络浏览器浏览网络信息的时候,如果使用代理服务器,浏览器就不是直接到web服务器中取回网页,而是向代理服务器发出请求,由代理服务器取回浏览器所需要的信息. 目前使用的因特网是一个典型的客户机/服务器结构,当用户的本地机与因特网连接时通过本地机的客户程序如浏览器或者软件下载工具发出请求,远端的服务器会在接收到请求之后提供

网络地址转换(NAT)

网络地址转换(NAT)NAT属接入广域网(WAN)技术,是一种将私有(保留)地址转化为公有(合法)IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中.原因很简单,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的×××,隐藏并保护网络内部的计算机.基本网络地址转换(Basic NAT)是一种将一组 IP地址映射到另一组 IP 地址的技术,这对终端用户来说是透明的.网络地址端口转换(NAPT)是一种将群体网络地址及其对应 TCP/UDP

网络地址转换NAT概念

网络地址转换NAT NAT的作用:增加IPv4的地址数量,解决私网地址不能上网的问题. NAT的概念:通过将内部网络的私网IP地址翻译成全球唯一的公网IP地址. 原理 原理:就是将内部本地转换为内部全局的地址,即将私网地址转换为公网地址去上网. NAT术语:内部本地(局部) 在内部网络中分配给主机使用的私有ip地址内部全局 该地址通常是从全球统一可寻址的地址空间中分配的,一般由互联网服务同上(ISP)提供外部全局 外部网络上的主机分配的ip地址.该地址也是从全球统一可寻址的地址空间中分配的外部本

linux 网络地址转换NAT

网络地址转换NATNAT的作用:增加IPv4的地址数量,解决私网地址不能上网的问题. NAT的概念:通过将内部网络的私网IP地址翻译成全球唯一的公网IP地址. 原理 原理:就是将内部本地转换为内部全局的地址,即将私网地址转换为公网地址去上网. NAT术语:内部本地(局部) 在内部网络中分配给主机使用的私有ip地址内部全局 该地址通常是从全球统一可寻址的地址空间中分配的,一般由互联网服务同上(ISP)提供外部全局 外部网络上的主机分配的ip地址.该地址也是从全球统一可寻址的地址空间中分配的外部本地

网络地址转换NAT应用实验

网络地址转换NAT实验 实验需求:1.pc1属于vlan10和pc2属于vlan20.2.Pc1和pc2通过DHCP获得ip信息.3.所有局域网成员都通过NAT上外网.4.R2可以远程管理sw1和sw2. 实验步骤:1.在sw1和sw2上设置vlan,基于端口设置vlan.sw1(config)#vlan 10,20 ###创建vlan10和vlan20.sw1(config-vlan)#exitsw1(config)#int f1/0 ###将端口添加到vlan10里面sw1(config-i