NAT基础原理

2022-10-04 17:02:32 浏览数 (3)

NAT 基础原理[产生背景]

  1. IPv4公网地址资源耗尽
  2. IPv6普及遥遥无期
  3. 子网划分杯水车薪

NAT基础原理[定义]

  1. 网络地址转换
  2. 通过把私有地址转换为公有地址,使私有IP地址主机可以访问互联网,来解决公网地址不够用的问题

NAT基础原理[分类]

> 静态NAT

  1. 把公有地址一对一的静态映射给私有地址使用

> 基本NAT

  1. 建立公有地址池,把池内的公有地址动态的映射给私有地址使用。
  2. [本质上还是一对一的映射]

> NAPT

  1. 把公有地址和端口动态的映射给私有地址和端口,实现一个公网地址可以供多个私有地址同时使用访问互联网
  2. 转换源IP和端口,数据回包还原目的IP和目的端口
  3. SNAT(源地址转换)

> Easy IP

  1. NAPT的一种简易实现形式
  2. 使用与公网地址不固定的场景

> NAT Server

  1. 把公网IP的某个端口固定映射到私网IP的某个端口,让公网上的用户可以主动访问私网中的服务
  2. 转换目的IP和目的端口,数据回包还原源IP和源端口
  3. 也称端口映射,DNAT(目的地址转换)

思科配置静态NAT

首先建立私有地址与公有地址的映射

代码语言:javascript复制
in nat inside source static [私有地址] [公网地址]

将转换的接口配置为内部接口或者外部接口绑定

代码语言:javascript复制
#在接口或者线路下
ip nat inside
ip nat outside

思科配置动态NAT

首先先定义一个地址池,池内包含要分配的公网地址段范围

代码语言:javascript复制
ip nat pool [PoolName] [start-address] [end-address] netmask [mask]

创建标准ACL,允许转换这些地址

代码语言:javascript复制
access-list [ID] [permit] [source]

将ACL与地址池绑定,来使路与其能够配置来确定那些地址能使用NAT地址

代码语言:javascript复制
ip nat inside source list [access-list-number] pool [pool-name]

最后在配置接口

代码语言:javascript复制
ip nat inside #确定哪个是内部接口
ip nat outside #确定哪个是外部接口

1 人点赞