12.NAT
NAT
NAT(Network Address Translation 网络地址转换技术),作用是将内网私有地址转换成公网地址,使得内网的主机可以上外网。
私有地址:任何人都可以使用
10.0.0.0/8
172.16.0.0-172.31.255.255
192.168.0.0/16
拓扑图
配置好接口ip地址和缺省路由
[R1]inter gi 0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.31.1 29
[R1-GigabitEthernet0/0/0]inter gi 0/0/1
[R1-GigabitEthernet0/0/1]ip add 12.1.1.2 29
[R1-GigabitEthernet0/0/1]q
[R1]
[R1]ip route-static 0.0.0.0 0 12.1.1.1
[R2]inter gi 0/0/0
[R2-GigabitEthernet0/0/0]ip add 12.1.1.1 29
[R2-GigabitEthernet0/0/0]inter loop 0
[R2-LoopBack0]ip add 9.9.9.9 32
[R2-LoopBack0]q
[R2]
静态NAT(static NAT)
手动指定私网地址和公网地址的映射关系。
方式1:一对一(一 一映射),一个私网地址对应一个公网地址
优点:外网的用户可以访问内网的主机。缺点:有多少个私网地址就需要多少个公网地址。
[R1]inter gi 0/0/1 #在外网口配置
[R1-GigabitEthernet0/0/1]nat static global 12.1.1.3 inside 192.168.31.2 #将12.1.1.3和私网地址31.2做一对一的映射
[R1-GigabitEthernet0/0/1]nat static global 12.1.1.4 inside 192.168.31.3
global:全局公网地址 local:内网私有地址
inside :内网 outside:外部
方式2:同一网段使用同一个公网ip
上面的命令后面其实有个netmask,如果不配置的话默认255.255.255.255,即:
nat static global 12.1.1.3 inside 192.168.31.2 netmask 255.255.255.255
如果想要实现同一网段使用同一个公网ip,可以修改掩码为255.255.255.0,这样就可以将192.168.31.0/24网段的所有内网地址转换为12.1.1.3这个公网地址。这种方式叫做端口多路复用(PAT),可以节省公网ip资源,但是也会增加路由器的负担。
ping测
查看nat 的转换过程
[R1]dis nat session protocol icmp
NAT 之 easy IP
允许多个私网地址转换成一个公网ip,很常用。
原理:先写acl 匹配内网私网地址段,出包时转换成公网接口(出接口)gi 0/0/1 的ip地址。
[R1]acl number 2000
[R1-acl-basic-2000]rule 0 permit source 192.168.31.0 0.0.0.7
[R1-acl-basic-2000]q
[R1]
[R1]inter gi 0/0/1 #公网接口(出接口)
[R1-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
ip address 12.1.1.2 255.255.255.248
nat static global 12.1.1.3 inside 192.168.31.2 netmask 255.255.255.255
nat static global 12.1.1.4 inside 192.168.31.3 netmask 255.255.255.255
#
return
[R1-GigabitEthernet0/0/1]undo nat static global 12.1.1.3 inside 192.168.31.2 netmask 255.255.255.255
[R1-GigabitEthernet0/0/1]undo nat static global 12.1.1.4 inside 192.168.31.3 netmask 255.255.255.255
[R1-GigabitEthernet0/0/1]nat outbound 2000 #2000是acl的表号
[R1-GigabitEthernet0/0/1]q
[R1]
注:acl 用来做匹配范围时,没有默认隐含允许所有的规则。
NAT 之 server NAT
可以将某服务器的某端口映射出去(非常安全)
添加一台Http Server和Http client。
配置Http Server
Http 服务器
先创建一个html文件,然后选中所在文件夹,然后点击启动http服务。
配置NAT Server
仅仅将服务器的80端口映射出去
[R1-GigabitEthernet0/0/1]nat server protocol tcp global 12.1.1.3 www inside 192.168.31.4 www
测试是否成功
- 添加http客户端并配置ip
- AR2配置接口IP
[R2]inter gi 0/0/1
[R2-GigabitEthernet0/0/1]ip add 12.1.2.1 29
- 输入http服务的地址,这里做了nat端口映射,所以需要输入映射的公网ip地址,请求成功。