为了提高局域网的上网质量,单位分别租用了电信和移动两路互联网出口,为了达到充分利用这两路互联网出口的目的,我们首先对现有设备(主要是硬件防火墙,型号为PIX520)进行了升级,接着我们结合单位实际的网络状况确定了双出口的具体实现方案,为了保证网络调试期间局域网内的上网不受影响,我们利用一台WIN2003服务器(双网卡)实现了NAT(网络地址转换)功能,顶替硬件防火墙的工作,最后就是具体的工程实施了。从设备升级、方案设计到最后调试成功,正式并网运行,前后经历了一周左右的时间,从目前的使用效果来看,使用了两路互联网出口后局域网用户的上网体验有了明显的改善,而且当一路互联网出口出现故障时,局域网用户并感觉不到断网,我们进行故障线路的切换的时间也很短(可以控制在1分钟)之内。本次双互联网出口的实现立足于现有设备的升级来实现的,费用较低,下面是具体的实现过程:
一、双互联网出口的实现方式
当我们拥有了双互联网出口时,如何使用这两路互联网出口,曾经设想过多种方案,比如能否实现双线路的网络故障自动切换,即当一路互联网出现问题时,可以将全部的流量切换到另一路正常的互联网出口上去;或者是不同单位(即相应的VLAN标识)的用户走不同的互联网出口;或者是自动根据用户访问的目标地址为其选择相应的路由。这些设想都可以很好的体现双路由的优点,但是当我们在做完PIX520硬件防火墙的软硬件升级后,针对这台设备的实际情况,最终的互联网双出口的使用方案为:当用户访问电信的网站的时候走电信的出口(通过静态路由实现),访问其它的网站均走移动的出口(通过默认路由实现)。这是目前来说最容易实现,也是相对来说效率较高的一种方案。
二、PIX520硬件防火墙的软硬件升级和组网拓扑图
本次双互联网出口的实现关键设备为PIX520,因此我们首先对硬件防火墙的硬件进行了升级,在原来两个网络模块的基础上又增加了一个网络模模,即可以实现两进(接两路互联网出口)一出(连接内部局域网);其次,我们对防火墙的软件版本进行了升级,目升级到了该设备硬件所能够支持的最高版本:6.3,版本信息如下:
pixfirewall# show ver
Cisco PIX Firewall Version 6.3(5)
Cisco PIX Device Manager Version 3.0(4)
Compiled on Thu 04-Aug-05 21:40 by morlee
pixfirewall up 11 days 0 hours
Hardware: SE440BX2, 128 MB RAM, CPU Pentium II 350 MHz
Flash i28F640J5 @ 0x300, 16MB
BIOS Flash AT29C257 @ 0xfffd8000, 32KB
0: ethernet0: address is 00d0.b78f.2cfc, irq 11
1: ethernet1: address is 00d0.b784.f820, irq 15
2: ethernet2: address is 0002.b326.ad25, irq 10
Licensed connections: 1024
Serial Number: 18034004 (0x1132d54)
Running Activation Key: 0x427d6ba6 0xaa5bb3e3 0xb13e934b 0xb08e5d5e
Configuration last modified by enable_15 at 17:16:21.175 UTC Mon May 24 2010
在这里要介绍一下PIX520防火墙的网络模块命名规则,第一块网卡名为e0,连接外网,第二块网卡名为e1,连接内网(这两个网络模块是系统自带的,名字和连接的网络不可修改),以后新加的网络模块依次为e2、e3、e4等,可以自行定义是所连接的网络,本例中我们新增了一块连接电信网段的网络模块,命名为e2。
组网拓扑如图1所示:
三 具体配置步骤
如图1所示,PIX520防火墙有两个对外连接的端口,分别连接了移动和电信的这两路互联网出口,对于PIX520防火墙来说,使用多个对外的出口和只使用一个对外的出口,配置思路和方式是一样的,下面我就结合实际工程案例说明一下,配置步骤如下:
(一)为网络模块命名
nameif ethernet0 outside security0
nameif ethernet1 inside security100
nameif ethernet2 outside2 security0
定义了e0口为连接移动的口,e2口为连接电信的口,e1口为连接内网的口。
(二)定义网口的IP地址
ip address outside 218.*.*.105 255.255.255.240
ip address outside2 222.*.*.93 255.255.255.224
address inside 192.168.201.1 255.255.255.0
连接移动的网卡的IP地址为218.*.*.105,连接电信的网卡的IP地址为222.*.*.93,连接内网的网卡的IP地址为192.168.201.1
(三)设置访问电信的网段走电信的口
route outside2 11.0.0.0 255.252.0.0 222.*.*.65 1
通过静态路由来实现,电信的网段有多个,这些静态路由也要相应的写多条,本例中只列举了其中一条。
(四)设置默认路由
route outside 0.0.0.0 0.0.0.0 218.*.*.97 1
这里要注意,由于我们有两块连向不同互联网出口的网关,所以我们在route命令后跟的网卡名称就不一样,静态路由后面跟的是outside2(即连电信的网卡),默认路由后面跟的是outside(即连移动的网卡)。
(五)设置指向内部网络的路由
route inside 10.0.0.0 255.0.0.0 192.168.201.2 1
route inside 192.168.0.0 255.255.0.0 192.168.201.2 1
route inside 172.19.0.0 255.255.0.0 192.168.201.2 1
同理,内部局域网中有多个网段(通过在三层交换机上创建相应的VLAN),我们就要在PIX520防火墙针对内部网段写多条路由,本例中我们列举了三条。
(六)配置动态NAT
1、创建一个ACL,里面包含允许访问外部网络的网段
access-list acl_inside deny udp any any eq tftp
……(省略了多条不允许进行的网络访问规则)
access-list acl_inside permit ip any any
这个名为acl_inside的ACL很重要,它描述了一些不允许访问的端口(主要是为了防止网络攻击),然后放开了其它的限制(即permit ip any any)
2、在内网端口上应用这个ACL
access-group acl_inside in interface inside
3、分别在两个外网端口上应用这个ACL
access-group acl_inside in interface outside
access-group acl_inside in interface outside2
(在新增的网络模块上也要应用这个ACL,这一点同样非常重要,我们在前期调试过程就是由于忽略了这一点,造成了往电信的线路老是调不通)。
4、执行动态NAT(PAT)
global (outside) 1 interface
global (outside2) 1 interface
nat (inside) 1 0.0.0.0 0.0.0.0 0 0
出于节约公网IP地址的目的,我们在PIX520防火墙上采用PAT(端口映射)的NAT方式,这也就意味着当用户访问位于电信网段的服务器时,他的内网IP地址会被转换为outside2这个端口的IP地址,而访问其它的网段的时候,他的内网IP地址则会被转换outside这个端口的IP地址。
四、双互联网出口的实际效果测试
当防火墙的配置全部完成后,我们就将一台笔记本电脑连接在防火墙的内网口,进行双互联网出口的使用测试。这台笔记本可以正常的打开网页,运行各种网络程序,并不代表双路由的自动选择成功。利用tracert命令得到的是比较准备可靠的,但是在这个过程中我们走了一点弯路,主要是在测试站点的选择上,最初选择了中国电信的官方网站www.chinatelecom.com.cn,但是测试的结果却显示出是通过移动的出口出去的,太不可思议了,后来我们想了一下,可能中国电信的官方网站做了一些优化,让位于不同运营商的用户也可以快速访问到它。所以后面我们又选择了一个普通的电信FTP服务器地址做tracert,结果就显示是通过电信的互联网出口出去的了。测试成功以后,我们就把PIX520硬件防火墙接到了实际的网络中,局域网的所有用户全部通过该硬件防火墙访问互联网,通过MRTG软件来实时监控PIX520防火墙的连移动和电信的这两个端口的流量,网页上显出的实时流量情况也反映出这两个端口均有一定的流量,移动的出口流量大些(平均在7、80M左右),电信的出口流量小些(平均在2、30M左右)
五、互联网出口出现故障时的切换方法
由于PIX520防火墙拥有了移动和电信这两路互联网出口,并且默认路由指向了移动的互联网出口,所以当电信的互联网出口出现故障的时候并不会影响用户上网,因为最终用户还是可以通过移动的出口访问所需的网站的。只有当移动的互联网出口出现问题时,才会造成用户部分网站无法访问,这时我们只需修改默认路由(即将指向移动的默认路由更换为指向电信的默认路由)即可恢复网络,具体命令为route outside 0.0.0.0 0.0.0.0 218.*.*.97改为route outside2 0.0.0.0 0.0.0.0 222.*.*.65。(一定要注意前后这两条设置默认路由命令的参数中,除了下一跳地址不同之外,route后面跟的网络模块的名称也不一样)。
以上就是我们单位通过PIX520实现双互联网出口的实施过程,使用双出口,既可以有效提高局域网用户的上网体验,又可以实现网络出口的备份和快速切换,在实际工作中体现了较好的效果。