思科:NAT基础笔记

NAT

私有IPv4地址

类别 CIDR前缀 RFC 1918内部地址范围
A 10.0.0.0/8 10.0.0.0~10.255.255.255
B 172.16.0.0/12 172.16.00~172.31.255.255
C 192.168.0.0/16 192.168.0.0~192.168.255.255

​ 这些私有地址可以在局域网中使用,配合NAT地址转换。可以实现节约IP地址的目的。

主要作用:

  • 节省了公有IPv4地址

  • 增强了网络的私密性和安全性,因为它对外部网络隐藏了内部IPv4地址

    ​ 创建一个NAT地址池,转换的地址可以从地址池中获取。

    ​ NAT路由器通常工作在末节网络边界。末节网络事一个与其相邻网络具有单个连接的网络,而且单进单出。

NAT术语

  • 内部本地地址

    • 从网络内部看到源地址
  • 内部全局地址

    • 从外部网络看到的源地址
  • 外部本地地址

    • 从外部网络看到的目标地址
  • 外部全局地址

    • 从网络内部看到的目标地址

    NAT的类型

  • 静态地址转换(静态NAT)

  • 本地地址和全局地址之间的一对一地址映射

  • 动态地址转换(动态NAT)

    • 本地地址和全局地址之间的多对多地址映射
  • 端口地址转换(PAT)

    • 本地地址和全局地址之间的多对一地址映射0

NAT优势

  • NAT允许对内联网实行私有编址
  • NAT增强了与公有网络连接的灵活性
  • NAT为内部网络编址提供了一致性
  • NAT隐藏用户IPv4地址

NAT缺点

  • 性能下降
  • 端对端功能下降
  • 端对端IP可追溯性会丧失
  • 隧道会变的更加复杂
  • 源TCP连接中断

配置静态NAT

R2(config)#ip nat inside source static 192.168.10.254 209.165.201.5
   									//内部地址       内部全局地址
R2(config)#interface serial0/0/0
R2(config-if)#ip address 10.1.1.2 255.255.255.0
R2(config-if)#ip nat inside
//配置面向内部的IP地址
R2(config)#interface serial0/1/0
R2(config-if)#ip address 209.165.200.225 255.255.255.0
R2(config-if)#ip nat outside
//配置面向外部的全局地址
R2#show ip nat translations
//查看静态NAT条目
R2#show ip nat statistics
//该命令显示有关总活动转换数、NAT配置参数、地址池中地址数量和已分配地址数量
R2#clear ip nat statistics
//清除任何之前转换的统计信息

配置动态NAT

静态NAT提供内部本地地址与内部全局地址之间的永久映射,而动态NAT使内部地址与内部全局地址能够进行自动映射

配置动态NAT的五个步骤

  • 定义将会用于转换的地址池,为该池分配一个名称来标识它。
  • 使用access-list access-list-number permit source [source-wildcard]命令配置一个标准的ACL,用于仅标识允许哪些将要进行转换的地址。
  • 绑定ACL与地址池。使用ip nat inside list access-list-number pool pool-name
  • 配置内部接口
  • 配置外部接口
R2(config)#ip nat pool NAT-pool 209.165.200.226 209.165.200.240 netmask 255.255.255.224
R2(config)#access-list 1 permit 192.168.0.0 0.0.255.255
R2(config)#ip nat inside source list 1 pool NAT-pool
R2(config)#interface serial0/0/0
R2(config-if)#ip nat inside
//配置面向内部的接口
R2(config)#interface serial0/1/0
R2(config-if)#ip nat outside
//配置面向外部的接口

配置PAT

配置PAT的五个步骤(第一种模式:有多个内部全局地址)

  • 定义将会用于转换的地址池,为该池分配一个名称来标识它。
  • 使用access-list access-list-number permit source [source-wildcard]命令配置一个标准的ACL,用于仅标识允许哪些将要进行转换的地址。
  • 绑定ACL与地址池。使用ip nat inside list access-list-number pool pool-name overload,PAT和NAT之间的主要区别在于此命令使用了overload关键字
  • 配置内部接口
  • 配置外部接口

配置PAT步骤(第二种模式:只有一个全局地址)

  • 使用ip nat pool pool-name start-ip end-ip {netmask netmask |prefix-length prefix-length}命令定义将会用于转换的地址池(由于只有一个地址所以不需要地址池)

  • 绑定ACL与接口。ip nat inside source list access-lsit-number interface type number overload全局配置命令绑定ACL与接口。

  • 配置内部接口

  • 配置外部接口

R2(config)#access-list 1 permit 192.168.0.0 0.0.255.255
R2(config)#ip nat inside source list 1 interface s 0/1/0 overload
R2(config)#interface s 0/0/0
R2(config)#ip nat inside
R2(config)#interface s 0/1/0
R2(config)#ip nat outside

配置端口转发

使用IOS命令实施端口转发与用于配置静态NAT的命令类似。端口转发的实质上是已指定TCP或UDP端口号的静态NAT转换

要配置端口转发,请使用ip nat inside source {static {tcp|udp local-ip local-port global-ip global-port} [extendable]}全局配置命令

IOS端口转发命令语法

参数 说明
tcp/udp 指示这是TCP还是UDP端口号
local-ip 这是分配给内部网络上的主机的IPv4地址,通常来自RFC 1918私有地址空间
local-port 设置本地TCP、UDP端口,范围1~65535.这是服务所侦听的端口号
global-ip 这是内部主机的唯一全局地址,这是外部客户端到达内部服务器所用的IP地址
global-port 设置全局TCP、UDP端口,范围1~65535.这是外部客户端到达内部服务器所用的端口号
extendable 这个选项默认会自动应用
R2(config)#ip nat inside static tcp 192.168.10.254 80 209.165.200.225 8080

你可能感兴趣的:(网络技术,网络)