妙用ISA Server的“重定向”功能解决单位网站不能访问的难题
2010-02-02 00:00:00 来源:WEB开发网在A市某单位增加了一条电信出口后,发现通过域名不能访问自己单位的网站了,而原来是可以访问的。具体案例如下:
该单位原来只有一条网通的出口,采用ISA Server作为防火墙与代理服务器提供共享,单位的网站在局域网中,通过ISA Server发布出去,而单位内部都是用域名来访问自己的网站的。而增加电信出口后,在ISA Server前面增加了一个“双WAN口”的路由器,分别接入电信与网通的专线,改造后网络拓扑如图1所示。
查看原图(大图)
图1 改造后网络拓扑
原来ISA Server防火墙直接连接到Internet网络上,设置的也是“公网”地址,这样,在用域名www.aaaa.cn访问时,ISA Server辨别出访问的网站是自己本身的网络地址,会将这个访问重定向到192.168.65.6这个内网的地址。而增加双WAN口路由器后,ISA Server外网的地址已经不是原来直接设置的公网地址,而是另外一个地址,这时,当内网访问www.aaaa.cn时,ISA Server解析到地址在其“外网-Internet网段”,会把这个请求转发到上层双WAN口路由器,这样,内网的用户访问不到真正的地址192.168.65.6,就会出现错误。
知道了问题的原因,解决问题就方便了。一开始,我告诉用户,既然用域名不能访问,你直接告诉单位的人,以后用192.168.65.6访问网站就行了。但许多用户只记住了单位的域名,不管是在内网(单位),还是在家里,都习惯于用域名访问,如果改用地址,许多人记不住,这个方法肯定不行。
一开始我也想了好多种办法,一个最简单的办法就是在单位内部创建一个DNS,用来解析aaaa.cn,将www的A记录重定向到 192.168.65.6,但这样还需要单位内部的人,修改DNS的地址,这样的工作量也是很大的(原来都是用的网通的DNS地址)。当然,还有编辑 hosts文件的方法,但这样对于网管来说,工作量很大。
最后,考虑到了ISA Server的“重定向”功能,并通过增加一个“跳转”网页的方法解决。就是在ISA Server中,创建一条策略,拒绝“内网”用户访问www.aaaa.cn这个网站,并提供一个错误的网页,该网页的内容就是“跳转”到192.168.65.6这个网站。这样,问题得以圆满解决。主要步骤如下:
(1)在ISA Server中创建一条访问规则,禁止“内网”用户访问www.aaaa.cn这个URL网站,并指定拒绝网址为http://192.168.65.6/lq.htm,如图2、图3所示。
查看原图(大图)
图2 禁止到www.aaaa.cn
图3 禁止操作并重定向到一个网页
(2)然后到192.168.65.6所在的服务器,在网站所在的文件夹中编写一个lq.htm网页,网页的内容为“跳转”到192.168.65.6这个网站。我简单的在网上搜索了一下,有好几种方法都能实现网页的跳转,以下两种方法最为简单。
方法一:
<script language="javascript" type="text/javascript">
window.location="http://192.168.65.6";;
</script>
方法二:
<html>
<head>
<title>页面跳转</title>
<meta http-equiv="refresh" content="1;url=http://192.168.65.6">
</head>
<body>
选择任意一个代码,保存为lq.htm。
以后,当内网中的用户以域名www.aaaa.cn访问该网站时,会被ISA Server“拒绝”并返回http://192.168.65.6/lq.htm的错误网页,而该“错误”网页的内容为无条件跳转到192.168.65.6网站,而该网站就是用户需要访问到的单位网站。
等这个方法用了一天之后,我又发现一个最简单的办法:直接在图3中,将错误网页,转到内网的地址即http://192.168.65.6就可以了。哎,开始想的有点复杂了,呵呵!
出处:http://wangchunhai.blog.51cto.com/225186/271939
更多精彩
赞助商链接