NAT地址转换——缓解IP地址紧缺,有效隐藏内部主机,处理地址重叠,但延迟增大,配置和维护复杂,不支持某些应用
NAT转换方式:
只更改源地址
只更改目的地址
同时更改源地址和目的地址
NAT转换方式:静态转换、动态转换、端口转换
NAT对应用是透明的
动态端口地址转换(DynamicPAT)--当多个本地地址映射到同一个全局地址时,用端口号来区别不同的本地地址
协议类型--TCP/UDP
协议端口号
PAT表项包含内部全局地址和端口号、内部本地地址和端口号、外部本地地址和端口号以及外部全局地址和端口号
本地地址——主机发送的数据包所含
全局地址——经路由器转换后的数据包所含,全局可路由
内部本地地址——内部主机实际地址
内部全局地址——内部地址经路由器转换后在外部显示的地址,代替一个或多个本地IP地址,对外的,合法主机地址
外部本地地址——外部地址经路由器转换后在内部显示的地址,不一定是合法地址
外部全局地址——外部主机实际地址,合法主机地址
inside和outside指设备所在的真实位置
local指设备在inside时的标识
global指设备在outside时的标识
inside接口收到IP包,先路由,若包要由inside到outside,就再NAT
outside接口收到IP包,先查NAT表看是否有对应条目,有就进行NAT并再路由,没有就直接查看路由表
静态NAT将一个内部地址转换为全局的、唯一地外部地址,可以访问外部又能为外部所访问
动态NAT地址转换本质上与静态是一致的,只是先定义一个转换地址池,当PC有一个向外的连接请求时,从地址池中取出一个IP地址,当连接断开时将把取出的IP重新放入池中,以供其他PC向外连接时使用
动态转换可以让一个公网IP地址被不同的站点使用多次,比静态只能让一个特定站点使用跟高效
虽然动态地址转换高效且利于管理,但外部用户不能访问内部特定的地址,因为他们之间没有静态映射,当每个会话结束后,主机再次发起连接,很可能分配不同于上次的本地全局地址,所以不可能用一个本地全局地址访问内部特定的地址
NAT配置步骤:
1.接口IP地址配置
2.使用访问控制列表定义能做NAT的主机
3.定义可用的公有地址、静态地址池或者端口地址
4.关联地址转换映射
5.在内部和外部端口上启用NAT
实验1配置静态NAT转换
如图,R2为NAT路由器,连接内网R1和外网R3,环回口和直连均已配好,R1与R2之间运行RIP,R2有一条前往R3的默认路由,R3上也有一条回R2的默认路由。
R1(config)# router rip
R1(config-router)# network 10.0.0.0
R1(config-router)# network 192.168.1.0
R1(config-router)# no auto-summary
R2(config)#router rip
R2(config-router)# network 10.0.0.0
R2(config-router)# no auto-summary
R2(config-router)# default-information originate
//RIP产生默认路由,使R1无路由匹配时可通过该条路由到达R2
R2(config-router)# exit
R2(config)#ip route 0.0.0.0 0.0.0.0 23.1.1.3
//前往R3的默认路由
R3(config)# ip route 0.0.0.0 0.0.0.0 23.1.1.2
//前往R2的默认路由
现有一台内网的主机如R1环回口lo0:192.168.1.1,想要访问外网的一台服务器如R3环回口lo0:33.1.1.1,而R2连接外网的接口e0/1配置一公网地址:23.1.1.2,此时需要在NAT路由器R2上做静态NAT来实现,如下:
R2(config)# ip nat inside source static 192.168.1.1 23.1.1.2
//将内部本地地址映射为内部全局地址
R2(config)# interface e0/0//在接口下启用NAT
R2(config-if)# ip nat inside
R2(config-if)# interface e0/1
R2(config-if)# ip nat outside
配置好后,在R2上显示下NAT地址转换表的情况(静态映射时,地址转换表一直存在)如图:
在NAT路由器R2上打开对NAT转换情况的监视:debug ip nat
然后在R1上用环回口地址192.168.1.1去ping下外网地址33.1.1.1,ping通后,在R2查看到的情况如下:
可以看到,192.168.1.1前往33.1.1.1的ping包,其源地址经过NAT转换成23.1.1.2后再到达目的地址33.1.1.1的
再在R3上用33.1.1.1ping一下地址23.1.1.2(外网主机是不知道内网地址192.168.1.1存在的),ping通后,在R2查看到的情况如下:
可以看到由33.1.1.1前往23.1.1.2的ping包中目的地址23.1.1.2到NAT路由器R2时被转化为192.168.1.1,之后再传到内网lo0口上。
由此可知,配置静态NAT,可使得单一内网地址转化为一个可路由的公有地址,再直接与外网地址连通,即实现了内部主机与外部服务器的资源互访。
欢迎来群一起交流:166684620
转载于:https://blog.51cto.com/willy/1051809