NAT
Network Address Translation
网络地址转换- -公有ip和私有ip互换
【NAT功能】
NAT不仅能解决了IP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。把内网的私有地址转换为外网的公有地址。使得内部网络上的(被设置为私有IP地址的)主机可以访问Internet
【NAT分类】
NAT可以分为Basic NAT和PAT
- Basic NAT只转换IP,不映射端口
- PAT除了转化IP,还做端口映射,可以用于多个内部地址映射到少量(甚至一个)外部地址
【NAT术语】
- 内部本地地址(inside local address)
局域网内部主机的地址,即私有地址 - 内部全局地址(inside global address)
内部本地地址被NAT路由器转换后的地址,通常是一个可路由的公网地址 - 外部全局地址(outside global address)
是与内部主机通信的目标主机的地址,通常是一个可路由的公网地址 - 外部本地地址(outside local address)
是目标主机可路由的公网地址被转换的地址,通常是内部私有地址
总结起来就一句话:
在边界路由器上,流量从内部去往外部时,将数据包中的源ip地址进行修改(内部本地改为内部全局);流量从外部进入内部时,修改目标ip地址(外部全局修改为外部本地)
【NAT配置详解】
1)一对一 (静态)
r2(config) ip nat inside source static 192.168.1.2 12.1.1.2
2)一对多 (动态) PAT
端口地址转换- -将多个私有ip地址转换为同一共有ip地址,依赖数据包中的端口号来进行区分
先使用ACL定义感兴趣流量- -那些私有ip地址需要被转换
r2(config) access-list 1 permit 192.168.1.0 0.0.0.255
r2(config) access-list 1 permit 192.168.2.0 0.0.0.255
r2(config) ip nat inside source list 1 interface fastEthernet 1/0 overload
本地 全局 负载
3)多对多 (静态或动态)
r2(config) access-list 2 permit 192.168.0.0 0.0.255.255 定义内部本地地址范围
r2(config) ip nat pool xxx 12.1.1.2 12.1.1.10 netmask 255.255.255.0 定义内部全局地址范围
r2(config) ip nat inside source list 2 pool xxx overload 配置多对多NAT
在配置多对多NAT时,是否携带overload将决定为静态或动态多对多;
不携带---静态多对多 最先来的边界路由器上的数个私有ip地址与这数个公有ip地址形成一对一;
携带----动态多对多 循环占用每个公有ip地址进行PAT;
4)端口映射
r2(config) ip nat inside source static tcp 192.168.1.100 80 12.1.1.2 80
本地 全局
通过外部访问12.1.1.2,同时目标端口为80时,目标ip地址就一定被转换为192.168.1.100,端口号80
r2(config) ip nat inside source static tcp 192.168.1.200 80 12.1.1.2 8080
通过外部访问12.1.1.2同时目标端口为8080时,目标ip地址就一定被转换为192.168.1.200,端口号80
切记:一旦进行NAT配置,就必须定义边界路由器上各个接口的方向
扫描二维码关注公众号,回复:
8845059 查看本文章
r2(config) interface fastEthernet 1/0
r2(config-if) ip nat outside
r2(config-if) exit
r2(config) interface fastEthernet 0/0
r2(config-if) ip nat inside
r2(config-if) exit
r2(config) interface fastEthernet 0/1
=r2(config-if) ip nat inside