发信人: starseacn(顾枫) 
整理人: firphoenix(2002-03-17 13:40:40), 站内信件
 | 
 
 
8. NAT(Network Address Translation)功能配置
 
 随着internet的网络以爆炸性的速度膨胀,IP地址短缺及路由规模越来越大已成为一个相当严重的问题。为了解决这个问题,出现了多种解决方案。一种在目前网络环境中比较有效的方法即地址转换(NAT)功能。
 
 所谓的地址转换,即NAT功能,就是指在一个组织网络内部,根据需要可以随意自定义的IP地址(不需要经过申请)即假的IP地址。在本组织内部,各计算机间通过假的IP地址进行通讯。而当组织内部的计算机要与外部internet网络进行通讯时,具有NAT功能的设备(这里是 cisco路由器)负责将其假的IP地址转换为真的IP地址,即该组织申请的合法IP地址进行通信。
 
 简单地说,NAT就是通过某种方式将IP地址进行转换。
 
 NAT功能的国际标准协议为RFC1631。
 
  
 
  
 
 NAT 有以下几种应用:
 
  
 
 你想连接Internet,但不想让你的网络内的所有计算机都拥有一个真正的internet IP地址。通过NAT功能,可以将申请的合法的Internet IP地址统一管理,当内部的计算机需要上Internet 时,动态或静态地将假的IP转换为合法的IP地址。 
 你不想让外部网络用户知道你的网络的内部结构,可以通过NAT将内部网络与外部Internet 隔离开,则外部用户根本不知道你的假IP地址。 
 你申请的合法Internet IP地址很少,而你的内部网络用户很多。可以通过NAT功能实现多个用户同时公开一个合法IP与外部Internet 进行通信。 
  
 
  
 
 注意:Cisco2500及1600系列路由器在IOS为11.2版本以上支持NAT功能。
 
  
 
 设置NAT功能的路由器至少要有一个Inside(内部)端口及至少一个Outside(外部)端口。内部端口连接的网络内的用户使用的是假的IP地址,及内部端口连接内部网络。且内部端口可以为任意一个路由器端口。外部端口连接的是外部的网络,如Internet 。外部端口可以为路由器上的任意端口。
 
 典型的应用,NAT设置在内部网与外部公用网的连接处的路由器上。当IP数据包离开内部网时NAT负责将内部的假的IP源地址转换成合法IP地址。当IP数据包进入内部网时,NAT将合法IP目的地址转换成内部假的IP地址。
 
 启用NAT功能的路由器,一定不能将内部网络路由信息广播到外部。然而,从外部广播来的路由信息,该路由器可以接受。
 
  
 
  
 
 NAT的几个概念:
 
 内部本地地址(Inside local address): 
 分配给内部网络中的计算机的假的IP地址
 
 内部合法地址(Inside global address): 
 对外进入IP通信时,代表一个或多个内部本地地址的合法IP地址。
 
 NAT设置可以分为静态地址转换、动态地址转换、复用动态地址转换。
 
  
 
 静态地址转换
 
 静态地址转换将内部本地地址与内部合法地址进行一对一的转换,且需要指定和哪个合法地址进行转换。如果内部网络有E-mail服务器或FTP服务器等可以为外部用户共的服务,这些服务器的IP地址必须采用静态地址转换,以便外部用户可以使用这些服务。
 
  
 
  
 
  
 
 动态地址转换:
 
 动态地址转换也是将本地地址与内部合法地址一对一的转换,但是是从内部合法地址池中动态地选择一个末使用的地址对内部本地地址进行转换。
 
  
 
  
 
 复用动态地址转换:
 
 复用动态地址转换首先是一种动态地址转换,但是它可以允许多个内部本地地址共用一个内部合法地址。只申请到少量IP地址但却经常同时有多于合法地址个数的用户上外部网络的情况,这种转换极为有用。
 
  
 
 注意:当多个用户同时使用一个IP地址,外部网络如何进行识别呢?路由器内部会利用上层的如TCP或UDP端口号等唯一标识某台计算机。
 
  
 
  
 
 静态地址转换基本配置步骤:
 
 在内部本地地址与内部合法地址之间建立静态地址转换。 
 Ip nat inside source static 内部本地地址 内部合法地址
 
 指定连接网络的内部端口 
 在端口设置状态下
 
 ip nat inside
 
 指定连接外部网络的外部端口 
 在端口设置状态下
 
 ip nat outside
 
 注意:你可以定义多个内部端口及多个外部端口。
 
 动态地址转换基本配置步骤:
 
 在全局设置模式下,定义内部合法地址池 
 ip nat pool 地址池名称 起始IP地址 终止IP地址 子网掩码
 
 其中地址池名字可以任意设定。
 
 在全局设置模式下,定义一个标准的access-list规则以允许哪些内部地址可以进行动态地址转换。 
 Access-list 标号 permit 源地址 通配符
 
 其中标号为1-99之间的整数。
 
 在全局设置模式下,将由access-list指定的内部本地地址与指定的内部合法地址池进行地址转换。 
 ip nat inside source list access-list 标号 pool内部合法地址池名字
 
 指定与内部网络相连的内部端口在端口设置状态下: 
 ip nat inside
 
 指定与外部网络相连的外部端口 
 Ip nat outside
 
  
 
  
 
 复用动态地址转换配置步骤:
 
 在全局设置模式下,定义内部合地址池 
 ip nat pool 地址池名字 起始IP地址 终止IP地址 子网掩码
 
 其中地址池名字可以任意设定。
 
 在全局设置模式下,定义一个标准的access-list规则以允许哪些内部本地地址可以进行动态地址转换。 
 Access-list 标号 permit 源地址 通配符
 
 其中标号为1-99之间的整数。
 
 在全局设置模式下,设置在内部的本地地址与内部合法IP地址间建立复用动态地址转换。 
 ip nat inside source list access-list 标号 pool 内部合法地址池名字 overload
 
 在端口设置状态下,指定与内部网络相连的内部端口 
 ip nat inside
 
 在端口设置状态下,指定与外部网络相连的外部端口 
 ip nat outside
 
  
 
 实例: 本实例中采用两台路由器直连方式。其中一台作为内部网络的路由器,另一台相当于外部网络上的路由器。本实例同时应用了三种NAT地址转换功能。将2511的以太口作为内部端口,同步端口0作为外部端口。其中10.1.1.10,10.1.1.11,10.1.1.12的内部本地地址采用静态地址转换。而10.1.2.0网段采用动态地址转换。而10.1.3.0网段采用复用动态地址转换。为了证实地址复用功能,复用地址池只用了一个IP地址,即192.31.1.31。在本实例中,采用了10.1.3.0上的两台PC同时长时间Ping另一台路由器。通过debug可以发现内部路由器相当于在分时复用IP。
 
  
 
 
 
 2511的配置
 
 Current configuration:
 
 !
 
 version 11.3
 
 no service password-encryption
 
 !
 
 hostname 2511
 
 !
 
 ip nat pool kim 192.1.1.20 192.1.1.30 netmask 255.255.255.0
 
 ip nat pool lab 192.1.1.31 192.1.1.31 netmask 255.255.255.0
 
 ip nat inside source list 1 pool kim 
 
 ip nat inside source list 2 pool lab overload 
 
 ip nat inside source static 10.1.1.10 192.1.1.10
 
 ip nat inside source static 10.1.1.11 192.1.1.11
 
 ip nat inside source static 10.1.1.12 192.1.1.12
 
 !
 
 interface Ethernet0
 
 ip address 10.1.1.1 255.255.255.0
 
 ip nat inside
 
 !
 
 interface Serial0
 
 ip address 192.1.1.1 255.255.255.0
 
 ip nat outside
 
 no ip mroute-cache
 
 bandwidth 2000
 
 no fair-queue
 
 clockrate 2000000
  | 
 
 
 |