目前不少企业都已建好了内部局域网,但随着互联网时代的到来,仅搭建局域网已经不能满足众多企业的需要,有更多的用户需要在INTERNET上发布信息,或进行信息检索,将企业内联网接入INTERNET已经成为众多企业的迫切要求。将局域网接入INTERNET有很多种方法如采用ISDN(或普通电话拨号)+代理服务器软件WINGATE或网关服务器软件SYGATEDDN专线等。DDN专线具有如下优点:(1)DDN是同步数据传输网,不具备交换功能;(2)传输速率高,网络时延小; (3)DDN为全透明网,可支持网络层以及其上的任何协议,从而可满足数据、图像、声音等多种业务的需要。随着电信资费的调整,采用DDN专线成为理想的选择。随着INTERNET网络的迅速发展,IP地址短缺已成为一个十分突出的问题。为了解决这一问题,出现了多种解决方案。下面将介绍使用路由器NATNetwork Address Translation)服务解决这一问题时路由器的处理过程及配置方法。<?XML:NAMESPACE PREFIX = O />

 

一、 NAT简介

 

NAT的功能就是指将使用私有地址的网络与公用网络INTERNET相连,使用私有地址的内部网络通过NAT路由器发送数据时,私有地址将被转化为合法注册的IP地址从而可以与INTERNET上的其他主机进行通讯。NAT路由器被置于内部网和INTERNET的边界上并且在把数据包发送到外部网络前将数据包的源地址转换为合法的IP地址。当多个内部主机共享一个合法IP地址时,地址转换是通过端口多路复用即改变外出数据包的源端口并进行端口映射完成。

 

二、 NAT工作过程

 

假设某公司申请DDN专线时,电信提供的合法地址为61.138.0.93/3061.128.0.94/30,公司内部网络地址为192.168.0.0/24,路由器局域口地址192.168.0.254/24,广域口地址61.138.0.93/30,如图1(文件名:1.jpg)

 

<?XML:NAMESPACE PREFIX = V />
 

192.168.0.1/24这台计算机向INTERNET上的服务器202.98.0.66发出请求,则相应的操作过程如下:

 

内部主机192.168.0.1/24的用户发出到INTERNET上主机202.98.0.66的连接请求;

 

边界路由器从内部主机接到第一个数据包时会检查其NAT映射表,如果还没有为该地址建立地址转换映射,路由器便决定为该地址进行地址转换,路由器为该内部地址192.168.0.1到合法IP地址61.138.0.93的映射,同时附加端口信息,以区别与内部其他主机的映射。

 

边界路由器用合法IP地址61.138.0.93及某端口号来替换内部IP地址192.168.0.1和对应的端口号,并转发该数据包

 

⑷INTERNET服务器202.98.0.66接到该数据包,并以该包的地址(61.138.0.93)来对内部主机192.168.0.1作出应答;

 

当边界路由器接受到目的地址为61.138.0.93的数据包时路由器将使用该IP地址、端口号从NAT的映射表中查找出对应的内部地址和端口号,然后将数据包的目的地址转化为内部地址192.168.0.1,并将数据包发送到该主机。对于每一个请求路由器都重复2-5的步骤。

 

路由器NAT功能配置

 

以上面的假设为例,分别说明在CISCO3COM路由器下配置NAT功能

 

CISCO路由器

 

CISCO2501为例,要求其IOS11.2版本以上

 

cisco2501#conf t

 

cisco2501(config)# int e0

 

cisco2501(config-if)# ip address 192.168.0.254 255.255.255.0

 

cisco2501(config-if)# ip nat inside

 

(指定e0口为与内部网相连的内部端口)

 

cisco2501(config-if)#int s0

 

cisco2501(config-if)#encapsulation ppp

 

(指定封装方式为PPP)

 

cisco2501(config-if)#ip address 61.138.0.93 255.255.255.252

 

cisco2501(config-if)# ip nat outside

 

(指定s0为与外部网络相连的外部端口)

 

cisco2501(config-if)#exit

 

cisco2501(config)# bandwidth 128

 

(指定网络带宽128k

 

cisco2501(config)# ip route 0.0.0.0 0.0.0.0 Serial0

 

(指定缺省路由)

 

cisco2501(config)# ip nat pool a 61.138.0.93 61.138.0.93 netmask 255.255.255.252

 

(指定内部合法地址池,起始地址,结束地址为合法IP 61.138.0.93

 

cisco2501(config)# access-list 1 permit 192.168.0.0 0.0.0.255

 

(定义一个标准的access-list规则,以允许哪些内部地址可以进行地址转换)

 

cisco2501(config)# ip nat inside source list 1 pool a overload

 

(设置内部地址与合法IP地址间建立地址转换)

 

cisco2501(config)#end

 

cisco2501#wr

 

3COM路由器

 

3COM OCBN8832为例,要求其SOFTWARE VERSION11.0版本以上

 

root注册,进行如下配置

 

配置局域网端口

 

[1] EnterpriseOS #setdefault !1 -ip netaddress=192.168.0.254 255.255.255.0

 

[2] EnterpriseOS #setdefault !! -path control =enable (激活路由器局域口PATH)

 

[3] EnterpriseOS #setdefault !1 -port control=enable (激活路由器局域口PORT

 

配置广域网串行端口

 

[4] EnterpriseOS #setdefault !3 -path linetype=leased (指明该端口使用的通信线路类型)

 

[5] EnterpriseOS #setdefault !4 -port owner=ppp (指明该端口的使用者)

 

[6] EnterpriseOS #setdefault !4 -ip netaddress=61.138.0.93 255.255.255.252

 

[7] EnterpriseOS #setdefault !4 -nat addressmap 192.168.0.0/24 61.138.0.93 outbound

 

(指定将192.168.0.0/24内部主机使用的IP地址转换成61.138.0.93)

 

[8] EnterpriseOS #setdault !4 -nat control=enable (启用NAT服务)

 

[9] EnterpriseOS #setdault !3 -path control=enable

 

[10]EnterpriseOS #setdault !4 -port control=enalbe

 

配置缺省路由

 

[11]EnterpriseOS #setdault -ip control=router (激活路由器的路由功能)

[12]EnterpriseOS #add -ip route 0.0.0.0 0.0.0.0 !4