网络地址转换(NAT)
NAT (Network Address Translation)又称为网络地址转换,用于实现私有网络和公有网络之间的互访。
壹、NAT的概念
- NAT通过将内部网络的私网IP地址翻译成全球唯一的公网IP地址,使内部网络可以连接到互联网等外部网络上,广泛应用于各种类型的互联网接入方式和各种类型的网络中
- NAT不仅解决了公网IP地址不足的问题,而且能够隐藏内部网络的细节,避免来自网络外部的危害,可以起到一定的安全作用
- 借助NAT ,私有保留地址的内部网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,这样一个 局域网只需要少量地址(甚至是一个) 即可实现私有地址网络中的所有计算机与互联网的通信需求
1、公有网络地址和私有网络地址
公网络地址(以下简称公网地址)是指在互联网上全球唯一的IP地址。2019年11月26日,是人类互联网时代值得纪念的一天,全球近43亿个IPv4地址已正式耗尽。 私有网络地址(以下简称私网地址)是指内部网络或主机的IP地址,IANA(互联网数字分配机构)规定将下列的IP地址保留用作私网地址,不在Internet上被分配,可在一个单位或公司内部使用。RFC1918中规定私有地址如下: A类私有地址: 10.0.0.0~10.255.255.255 B类私有地址: 172.16.0.0~172.31.255.255 C类私有地址: 192.168.0.0~192.168.255.255
2、NAT的工作原理
-
NAT用来将内网地址和端口号转换成合法的公网地址和端口号,建立一个会话,与公网主机进行通信。
-
NAT外部的主机无法主动跟位于NAT内部的主机通信,NAT内部主机想要通信,必须主动和公网的一个IP通信,路由器负贵建立一个映射关系,从而实现数据的转发。
3、NAT功能:
NAT不仅能解决了IP地址不足的问题,而且还能够有效地避免来自网络外部的危害,隐藏并保护网络内部的计算机。 1.宽带分享:这是NAT主机的最大功能。 2.安全防护: NAT之内的PC联机到Internet.上面时,他所显示的IP是NAT主机的公网IP,所以Client端的PC就具有一 定程度的安全了,外界在进行portscan (端口扫描)的时候,就侦测不到源Client端的PC
优点:节省公有合法IP地址、处理地址重叠、增强灵活性、安全性。 缺点:延迟增大、配置和维护的复杂性、不支持某些应用。
NAT的术语与转换表
NAT 数据包从内网到外网时,会转换源IP地址,由私网地址转换成公网地址 数据包从外网到内网时,会转换目的IP地址,由公网地址转换成私网地址
贰、NAT的配置
1、静态NAT
- 静态NAT实现私网地址和公网地址的一对一转换,有多少个私网地址就需要配置多少个公网地址,静态NAT不能节约公网地址,但可以起到隐藏内部网络的作用。
- 内部网络向外部网络发送报文时,静态NAT将报文的源IP地址替换为对应的公网地址;外部网络向内部网络发送响应报文时,NAT将报文的目的地址替换为相应的私网地址。
两种配置方法:
全局模式下设置静态NAT
[R1]nat static g1obal 8.8.8.8 inside 192.168.10.10
[R1]int g0/0/1 ###外网口
[R1-GigabitEthernet0/0/1]nat static enable ###在网口上启动nat static enable功能
第二种:直接在接口上声明 nat static
[R1]int g0/0/1###外网口
[R1 -GigabitEthernet0/0/11nat static g1obal 8.8.8.8 inside 192. 168.10.10
查看NAT静态配置信息 dis nat static
2、动态NAT
多个私网IP地址对应多个公网IP地址,基于地址池一对一映射
1、配置外部网口和内部网口的IP地址
2、定义合法IP地址
[R1]nat address-group 1 212.0.0.100 212.0.0.200 ###新建一个名为1的nat地址池
3、定义访问控制列表
[R1]acl 2000 ###创建ACL,允许源地址为192.168.20.0/24网段和11.0.0.0/24的数据通过
[R1-acl-basic-2000]rule permit source 192.168.20.0 0.0.0.255
[R1-acl-basic-2000]rule permit source 11.0.0.0 0.0.0.255
4、在外网口上设置动态IP地址转换
[R1-acl-basic-2000]int g0/0/1 ###外网口
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1 no-pat
###将ACL 2000匹配的数据转换为改接口的IP地址作为源地址(no pat不做端口转换,只做IP地址转换,默认为pat)
查看NAT outbound的信息dis nat outbound
叁、PAT端口多路复用
PAT又称为NAPT (Network Address Port Translation),它实现一个公网地址和多个私网地址之间的映射,因此可以节约公网地址。PAT的基本原理是将不同私网地址的报文的源IP地址转换为同一公网地址,但他们被转换为该地址的不同端口号,因仍然能够共享同一地址。
PAT有以下作用:
- 改变数据包的IP地址和端口号。
- 能够大量节约公网IP地址
PAT的类型的以下:
1.动态PAT,包括NAPT和Easy IP。
2.静态PAT,包括NAT Server
1、NAPT
1、配置外部网口和内部网口的IP地址 2、定义合法IP地址池
[R1]nat address-group 1 200.1.1.10 200.1.1.10 ###使用一个固定IP
3、定义访问控制列表
[R1]ac1 2000 ###允许源地址为192.168.30.0/24网段的数据通过
[R1-acl-adv-2000]rule permit source 192.168.30.0 0.0.0.255
4、在外网口上设置IP地址转换
[R1-acl-basic-2000]int g0/0/1 ###外网口
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1
2、Easy IP
多个私有IP地址对应外网口公网IP地址(比如12.0.0.1)
1、配置外部网和内部网]的IP地址 2、定义合法IP地址池由于直接实验外网口]IP地址所以不用再定义1P地址池 3、定义访问控制列表
[R1]acl 3000 ###允许源地址为192.168.30.0/24网段的数据通过
[R1-acl-adv-3000]rule permit ip source 192.168.30.0 0.0.0.255
4、在外网口上设置IP地址转换
[R1]int g0/0/1 ###外网口
[R1-GigabitEthernet0/0/1]nat outbound 3000
###当ac1 3000匹配的源IP数据到达此接口时,转换为该接口的IP地址做为源地址
[R1]display nat session all ###查看NAT的流表信息
3、NAT server
端口映射,将私网地址端口映射到公网地址,实现内网服务器供外网用户访问
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat server. protocol tcp global 9.9.9.9 www inside 192 .168.10.100 www
###在连接公网的接口上将私网服务器地址和公网地址做一对NAT映射绑定
[R1-GigabitEthernet0/0/1]nat server protocol tcp g1obal current-interface 8080 inside 10.1.1.1 www
###在连接公网的接口上将私网服务器地址和外网接口做一对NAT映射绑定
[R1-GigabitEthernet0/0/1]nat server protocol tcp global current- interface 2121 inside 10.1.1.2 ftp
###端口为21可以直接使用关键字"ftp”代替