范海峰,刘本仓
(河南理工大学a.万方科技学院;b.现代教育技术中心,河南 焦作 454000)
早期的校园网采用CERNET(中国教育和科研计算机网)接入,随着网络技术的发展及计算机网络知识的普及,高校内部上网用户数急剧增加,CERNET与国内其他ISP互联访问慢且不稳定,使得校园网出口拥挤不堪,因此越来越多的校园网建网方案使用多个网络出口方式,通过多个ISP接入Internet,以达到增加网络带宽、提高访问效率的目的[1]。目前,中国有三家主流网络运营商,分别是中国电信、中国联通与中国移动。由于中国移动的互联网业务起步较晚,网络出口带宽低,可分配的IP地址数目较少,现在在互联网市场上的占有率相对较低,且基于中国移动互联网的网站及应用比较少。因此,大部分高校都从中国联通与中国电信中选择。由于中国互联网行业“南北分家”,在北方,联通的网络具有价格跟速度的优势,而在南方,电信的网络具有价格跟速度的优势。所以一般来说,北方地区高校选择中国联通,南方地区高校选择中国电信。当然,对于速度跟质量都要求比较高的高校来说,最好的方案是同时接入中国电信与中国联通。如此一来,加上原有的教育网出口,整个校园网现有三个网络出口。众所周知,教育网与联通和电信的互访是很慢的,同样,联通与电信之间的互相访问也存在着瓶颈。传统的解决办法是采用各出口负载均衡,这种做法虽然解决了校园网出口拥挤的问题,但是在内部访问外网的速度却有快有慢,且用户端设置要进行调整。如何充分利用这三个网络出口,实现资源的合理配置,既能简化用户端的配置,又能提高校园网对外访问的整体速稳定性,是本文需要解决的问题。
NAT(Network Address Translation)[2],俗称网络地址转换。从理论上而言,NAT技术可以实现于任何网络上,实际应用中,由于IPv4的地址不足,使得NAT技术多应用于TCP/IP架构的网络上。NAT技术完美地解决了IPv4地址空间问题,同时还可以有效地隔离网络外部的攻击,对外隐藏网络内部的主机并起到保护作用。
在图1中,PC1和PC2是两台连入网络的计算机,其中PC1处在内网环境中,IP地址为私有地址:192.168.100.2,PC2 处在公网环境中,IP 地址为 218.196.240.2,若PC1 要与 PC2 通信,PC1 发源地址为192.168.100.2,目的地址为218.196.240.2的 IP报文,IP报文将被路由到NAT设备。NAT设备收到这个IP报文后,将源地址改为公有地址202.196.64.1,并记录私有地址 192.168.100.2与公有地址202.196.64.1间的地址映射存入映射表中,然后发出修改后的IP报文;当PC2主机收到报文后,回复报文到达NAT设备后,NAT设备再根据地址映射表中地址的对应关系,把目的地址转换为PC1的地址,这样就完成了内网地址主机与公网地址主机的通信,其中的NAT设备可以是路由器、防火墙、代理服务器等所有带NAT功能的网络设备。
图1 NAT示意图
NAT的实现方式有3种,静态地址转换(Static Address Translation)、动态地址转换(Dynamic Address Translation)和端口多路复用(Port address Translation)[3]。
静态地址转换技术是将网络内部私有IP地址转换为公网IP地址,IP地址是一一对应,静态指定,一个公有IP地址只能对应某一个私有IP地址。这种静态转换没有节省公有地址数量,但实现简单。使用静态转换,能够实现公共网络对内部网络中某些指定设备(或服务)的直接访问。
动态地址转换技术是在将网络内部的私有IP地址转换为公用IP地址时,对应的外部IP地址是随机的,不用事先指定,所有被授权访问Internet的内部私有IP地址随机转换为地址池内的任意IP地址。也就是说,只要指定用来进行转换的私有IP地址范围,以及作为外部地址的公有IP地址,就可以自动进行动态转换。动态地址转换技术也是将内部本地地址与内部合法地址一对一地转换。但是动态地址转换是从内部全局地址池中动态地选择一个未使用的公用IP地址来与内部私有IP地址进行转换的。
端口多路复用技术(Port Address Translation,PAT)是用来替换原有外出数据包的源端口并进行地址转换,复用动态地址转换首先是一种动态地址转换,但是它可以允许多个内部本地地址共用一个或多个内部全局地址。对只申请到少量IP地址但却经常同时很多个用户上外部网络的情况,可采用这种转换,从而可以最大限度地节约IP地址资源。
该方案中主要应用了两种路由技术:策略路由与静态路由。策略路由技术[4]提供了这样一种机制:根据网络管理者制定的标准来进行报文转发,这种标准根据实际的应用需求来指定,它的依据可以是协议类型、应用、报文大小,或者IP源地址中的一个或者多个的组合。它提供了比传统路由协议对报文的转发和存储更强的控制能力、更灵活的使用方式[5]。静态路由是在路由器中设置的固定的路由条目,除非路由表被人为改动,否则路由表不会发生变化。因此静态路由不能适应网络结构的改变而作出相应调整,一般用于网络规模较小、拓扑结构固定、网络稳定的网络中。静态路由的优点是简单、高效、稳定。在所有的路由协议中,静态路由默认优先级最高,在多数路由器中可以根据需要人为调整优先级。当动态路由与静态路由发生冲突时,一般以静态路由为准[6]。
该案采用NAT与路由技术,实现教育网、联通、电信三出口的合理配置,提高校园网的访问速度。具体来说,原有的教育网设备仍然使用,内部的网络结构不需要调整,用户端也不需要进行任何改动,即对用户来说是透明的(校园网用户全部使用CERNET地址),虽然CERNET地址也是互联网上合法的地址,但是如果直接用CERNET地址访问外网依然是通过教育网的路由,达不到提高访问速度的要求,所以必须进行NAT地址转换。由于电信与联通分配的IP地址有限,不可能做NAT静态映射,采用NAT动态转换技术实现CERNET地址访问联通通过联通出口,访问电信通过电信出口,所以需要增加一套NAT设备作为公网出口,本文中以锐捷网络公司的NPE(Network outPut Engine,网络出口引擎)设备为例,简单的结构如图2所示。
核心交换机G1/2口与CERNET相连,端口地址为:202.196.64.13,对端设备地址(去往教育网的下一跳)为:202.196.64.14,G1/1口与NAT设备的G2/1相连,核心交换机G1/1端口地址为:202.196.64.17,NAT设备G2/1端口地址为:202.196.64.18,NAT设备G2/2口与电信相连,端口地址为:222.88.88.82,对端地址为222.88.88.81(去往电信的下一跳),NAT设备G2/3口与联通相连,端口地址为:218.28.88.82,对端地址为218.28.88.81(去往联通的下一跳)。电信分配给学校的地址段为:222.88.88.80/28,联通分配给学校的地址段为:218.28.88.80/28,其中G1/1,G2/1……中G表示Gigabit Ethernet(千兆以太网接口),前面的数字表示接口板号,后面的数字表示接口板端口号。
图2 多出口校园网简单模型
一般来说,有CERNET接入的高校分配的教育网合法地址比较多,基本上可以满足校内学习、办公、娱乐的需要,每个用户都可以分配一个CERNET公网地址。在没有接入联通和电信的出口以前,是可以直接通过CERNET来访问互联网的。现在需要做的就是在核心交换机上做一个判断,如果目的地址是教育网直接送到教育网的下一跳,如果目的地址不是教育网,就送到公网的出口(NAT设备)。由于校园网建成之后基本上没有什么大的变动,具体设计可以使用策略路由与静态路由来实现,找到所有的CERNET网段,设置路由的下一跳为教育网出口地址,命令格式如下:ip route*.*.*.* X.X.X.X 202.196.64.14,这里*.*.*.*表示CERNET的所有子网,X.X.X.X表示子网掩码。设置默认路由为NAT设备G2/1的地址,即除了目的地址是教育网的请求都送到NAT设备。命令如下:iproute 0.0.0.00.0.0.0202.196.64.18,为了保证网络的稳定性,即当NAT设备损坏时网络仍然畅通,保证网络的有效性,可以设置备用的默认路由,命令如下:iproute 0.0.0.00.0.0.0202.196.64.1410,即当NAT设备地址202.196.64.18不可用时,自动将所有的请求发往教育网的下一跳地址202.196.64.14。
4.2.1 NAT设计
由于联通和电信分配的公网地址比较少,远远小于校园网内部的用户数,内部的CERNET用户访问联通与电信肯定需要进行NAT转换,这里选用动态的复用动态地址转换。首先,确定要进行NAT转换的地址,这里为了方便讲述,允许所有的地址,命令如下:ip access-list standard 99(建立一个标准的访问控制列表,编号为99),10 permit any(允许所有的源地址);其次,要明确Inside和Outside端口,这里与核心交换机相连的端口是Inside端口,与联通和电信相连的两个端口是Outside端口,在端口模式下可通过命令ip nat inside和ip nat outside来实现;再次,定义一个NAT地址池,命令如下:ip nat pool NAT_POOL prefix-length 24(定义名为NAT_POOL的地址池),address 218.28.88.82218.28.88.94 match interface gigabitEthernet 2/3(联通地址池),address 222.88.88.82222.88.198.94 match interface gigabitEthernet 2/2(电信地址池);最后是NAT的应用,具体命令为:ip nat inside source list 99 pool NAT_POOL overload。
4.2.2 NAT设备上路由设计
首先,要确定默认路由,一般来说可以参考以下3个原则:1)选择带宽大的作为默认路由;2)选择IP地址数目多的为默认路由;3)根据地域选择,北方用户选择联通作为默认路由,南方用户选择电信作为默认路由。所以在这里选择联通作为默认的外网路由出口。其次,需要在NAT设备上做路由二次判断,如果核心交换机送过来的目的地址是电信地址,直接送至电信出口进行NAT转换,具体命令格式如下:ip route*.*.*.* X.X.X.X 222.88.88.81,这里*.*.*.*表示电信的所有子网,X.X.X.X表示子网掩码。如果目的地址不是电信地址,就从默认路由送至联通出口进行NAT转换,具体命令为:ip route 0.0.0.00.0.0.0218.28.88.81。最后,为了保证网络的稳定性,即联通电信任意一方中断网络依然通畅,可以设置电信为备份的默认路由,具体命令为:ip route 0.0.0.00.0.0.0222.88.88.8110。
至此,基于NAT与路由技术的校园网智能出口已经设计完成,实现了校园网内部用户访问教育网通过教育网出口,访问联通通过联通出口,访问电信通过电信出口,访问其他网络(如移动)可以根据需要调整访问策略,本文中访问其他网络通过默认的联通出口。在某高校的实践中表明,此设计可以大大提高校园网的对外访问速度,简化校园网结构,使网络带宽得到合理的应用,提升了网络效率。
4.2.3 实验结果分析
实验结果分析如表1所示。
表1 各出口PING时延比较 ms
在IPv6时代没有到来以前,IPv4地址日渐枯竭,NAT技术很好地解决了这一问题,且无论是IPv4还是IPv6,都可以利用NAT技术简化和优化网络设计,并能很好地保证内网的安全。NAT技术仍将是因特网上的主流技术,具有不可替代的地位。目前,随着宽带网不断地深入生活,智能小区、校园网的建设都离不开NAT技术。因此,在当前环境下研究、探索NAT技术是非常必要的,其作用及意义都非常重大。本文利用NAT与路由技术,实现了校园网的智能出口设计,提高了校园网内部用户对外的访问速度,为了说明的方便起见,在本文中没有考虑出口的安全设计,但是在实际应用中需要注意出口的安全问题。
[1]王彬,何文娟.多出口多寻址模式的网络设计[J].计算机工程,2007,33(21):259-261.
[2]TSIRTSIS G,SRISURESH P.Network address translation-protocol translation(NAT-PT)[EB/OL].[2012-03-05].http://www.ietf.org/rfc/rfc2766.txt.
[3]李广华,朱志祥,李振兴.NAT技术基本原理及其在实际中的应用[J].西安邮电学院学报,2009,14(1):91-95.
[4]尚遵义,崔立军.多出口路由策略实现及相关问题研究[J].大连铁道学院学报,2004,25(3):83-86.
[5]罗伟雄,时东晓,刘岚.校园网多出口路由优化方案[J].计算机应用,2009,29(6):41-43.
[6]陈阿林,肖丹燕,肖嵬,等.校园网的路由策略选择及实现[J].电讯技术,2002,6(4):134-137.