近来我见到最多的一个问题是如何让安装在ISA防火墙上的DHCP中继代理正常的工作,这些公司在企业内部网络中部署有DHCP服务器,并且想为VPN客户转发DHCP选项。也许你想转发给VPN客户的最重要的DHCP选项是主域名后缀,这样VPN客户可以正确的限定它们的域名请求。当VPN客户可以正确的限定它们的域名请求时,它们就可以使用你内部的DNS服务器来解析内部主机的域名。当然,你可以分配任何你需要的DHCP选项,例如允许你的VPN客户使用指定Web代理服务的WPAD选项。
为了让ISA防火墙上的DHCP中继代理正常工作,你需要:
通过ISA防火墙控制台启用RRAS服务;
配置ISA防火墙的VPN服务使用DHCP来分配VPN客户的地址;
创建允许DHCP中继代理和VPN客户获得IP地址信息的访问规则;
在RRAS控制台中安装和配置DHCP中继代理;
重启ISA防火墙并进行测试。
在下面的讨论中,我假设你已经在内部网络中安装和配置好了DHCP服务器,现在你需要在ISA防火墙上配置DHCP中继代理转发VPN客户的DHCP请求到内部网络中的DHCP服务器。
另外,我假设你只是安装好了ISA防火墙,并没有启用VPN服务,不过,如果你已经启用了VPN服务,你只需要跳过启用VPN服务的步骤即可。
测试网络如下图所示:
DHCP作用域选项如图所示,内部网络中一台DC作为域控和DHCP服务器,ISA防火墙是边缘防火墙;VPN客户可以拨入ISA防火墙,并且从ISA防火墙获取IP地址信息。通过ISA防火墙控制台启用RRAS服务
如果你没有启用ISA防火墙的VPN服务,那么首先我们需要在ISA防火墙控制台中启用它。执行以下步骤启用ISA防火墙的VPN服务:
1、运行ISA Server 2004管理控制台,展开服务器名,点击虚拟专用网络(VPN)节点;
2、点击任务面板的任务标签,点击启用VPN客户访问链接;
3、点击应用保存修改和更新防火墙策略;
4、在应用新配置对话框上点击确定。
配置ISA防火墙的VPN服务使用DHCP来分配VPN客户的地址
对于VPN客户的IP地址分配,你有两个选项:DHCP或者静态地址池。我更喜欢DHCP,因为这样就可以不用在ISA防火墙的网络定义中移除DHCP作用域中重叠的IP地址范围。
注:对于使用静态IP地址池的情况,你必须将此静态IP地址池的地址范围从ISA防火墙的网络定义中移除,而使用DHCP就不需要进行此操作。
默认情况下,ISA防火墙使用DHCP来为DHCP客户分配IP地址,但是没有DHCP中继代理,DHCP服务器只会为VPN客户分配IP地址,这是因为VPN客户永远不能直接和DHCP服务器进行通讯。而当RRAS服务启动时,它将从DHCP服务器处获得10个IP地址(如果DHCP服务器有足够的IP地址可以分配而且RRAS服务器至少需要那么多),然后RRAS服务给自己分配这些地址中的一个IP地址,其他分配给VPN客户。如果RRAS服务需要更多的IP地址,它将从DHCP服务器获取,但是从不会为VPN客户获取DHCP选项。
如果你已经配置为使用静态IP地址池为VPN客户分配IP地址,现在想切换为DHCP,那么执行以下步骤:
1、在ISA防火墙控制台,点击虚拟专用网络(VPN)节点,然后点击任务面板中的任务标签;
2、点击任务面板中的定义地址分配链接;
3、在地虚拟专用网络(VPN)属性对话框的地址分配标签,点击动态主机配置协议(DHCP)选项;
4、点击应用再点击确定;
5、点击应用保存修改和更新防火墙策略;
6、在应用新配置对话框上点击确定。
创建允许DHCP中继代理和VPN客户获得IP地址信息的访问规则
我们需要创建两条访问规则来实现DHCP中继代理的配置,这两条访问规则如下面的表所示:
表一:允许内部到VPN客户的DHCP回复
设置
值
序号
1
名字
DHCP回复
(内部到VPN客户)
动作
允许
协议
DHCP回复
从/侦听器
内部
到
VPN客户
条件
所有用户
表二:允许VPN客户到本地主机的DHCP请求
设置
值
序号
2
名字
DHCP请求
(VPN客户到本地主机)
动作
允许
协议
DHCP请求
从/侦听器
VPN客户
到
本地主机
条件
所有用户
注意规则顺序只是为这个试验而设置的,在你的商用环境中,你可能需要将它们放置在合适的位置。它们是没有进行身份验证的访问规则,你必须将它们放置在需要验证的访问规则之前。
我们需要创建允许内部到VPN客户的DHCP回复的访问规则,是因为企业内部网络中的DHCP服务器看到发起DHCP请求的源IP地址是VPN客户。ISA防火墙为VPN客户扮演了一个代理ARP服务器服务器的角色,但并不会修改DHCP请求中发起请求的VPN客户的源IP地址。
我们需要创建允许VPN客户到本地主机的DHCP请求的访问规则,是因为VPN客户需要发送它们的DHCPINFORM信息到ISA防火墙,因为DHCP中继代理安装在ISA防火墙上。
