NAT在实际中的三种类型配置讲解

小编:迷魂冰 更新时间:2022-05-04

配置主要已cisco命令讲解为主!华为、H3C等都大同小异,原理都一样。

NAT在实际中的三种类型配置讲解

图1

NAT(网络地址转换协议)提供了一种完全将内部网络和Internet网隔离的方法,让内网少数合法IP甚至一个合法IP访问Internet资源,从而节省IP地址,一直得到广泛应用。(解析:比如在一个网吧只有一个公网IP,内网里用的都是私有IP地址,私有IP是不能访问公网的,这个时候经过NAT转化,把内网里所有计算机的私有地址转化成那一个公网IP出去)

NAT有三种类型:

静态转化:指将内部网络的某个私有IP转换为公网IP,它们是一对一的,没有指定的将不会转化。

在路由器的全局配置模式命令格式为:

ip nat inside source static //内部专用地址 内部合法地址,其中内部专用地址为内部私有地址,内部合法地址为公网IP地址。

进入接口模式下启用NAT,格式为:

ip nat inside/outside 这里需要注意:内网接口使用inside,外网接口使用outside,进跟出。

比如图1中,它要求将172.168.1.1静态转化成202.103.24.68配置如下:

ip nat inside source static 172.168.1.1 202.103.24.68

运用到接口上去:

int f0/0 //进入f0/0接口模式

ip nat inside //在接口模式下设置进

int s1/1 //进入s1/1接口模式

ip nat outside //在接口模式下设置出


NAT在实际中的三种类型配置讲解

图2

动态转换:指将内部网络的私有IP转换成公网IP时是不确定的,随机的,所有私有IP都可随机转换为指定的公网IP。

动态转换需要为内网定义一条标准的ACL(ACL上一章我有讲过)命令格式:

access-list access-list-number permit {deny} local-ip-address

为NAT定义一个地址池:

ip nat pool-name start-ip end-ip netmask

将ACL映射到NAT地址池,格式为:

ip nat inside source list access-list-number pool pool-name

最后也是进入接口模式启用NAT

ip nat inside/outside

如图2中,合法的地址池202.103.24.1/24---202.103.24.254/24允许转换的内网范围172.168.1.0/24、173.168.1.0/24、174.168.1.0/24三个网段,配置如下:

ip nat pool aaa 202.103.24.1 202.103.24.254 netmask 255.255.255.0 //定义一个公网地址池名称为aaa (名称可以随便),合法的公网ip 202.103.24.1 至 202.103.24.254 子网掩码255.255.255.0

access-list 1 permit //定义一条标准ACL(permit允许,deny拒绝)

ip nat inside source list 1 pool aaa //启用NAT允许来自地址池名称为aaa的转换。

最后在接口模式下运用

ip nat inside/ip nat outside


NAT在实际中的三种类型配置讲解

图3

PAT端口多路复用:指改变外出数据包的源端口并进行端口转换,即端口地址转换,内部所有主机都可共享一个公网IP。

端口多路复用跟动态转换差不多,也是需要配置ACL,端口映射命令格式为:

ip nat inside source list 访问列表号 pool 内部全局地址池名称 overload

图3中要求将172.168.1.0/24 173.168.1.0/24 174.168.1.0/24转换成路由器s1/1接口的地址10.10.10.1/24

access-list 1 permit 172.168.1.0 0.0.0.255 //定义控制列表允许172.168.1.0网段

access-list 1 permit 173.168.1.0 0.0.0.255 //定义控制列表允许173.168.1.0网段

access-list 1 permit 174.168.1.0 0.0.0.255 //定义控制列表允许174.168.1.0网段

ip nat inside source list 1 int s1/1 overload //定义NAT来自控制列表1的网段到s1/1接口复用s1/1接口地址

int f0/0 //进入内网接口

ip nat inside //内网接口启用NAT

int s1/1 //进入外部接口

ip nat outside //启用NAT

分享不易,如果这篇文章对你有帮助,请点个赞或关注,后续还有持续更新,谢谢!!