信息来源:windows 中文站
Microsoft Internet Security and Acceleration (ISA) Server 本地地址表(local address table,LAT)是一个由 ISA Server 计算机保护的、内部网络中所有 IP 地址范围的表。LAT 是在安装过程中进行配置的,且在安装结束后可以使用 ISA Management 进行修改。
ISA Server 使用 LAT 定义内部网络上“受信任”的计算机。不在 LAT 中的任何计算机都被 ISA Server 认为是外部的且“不受信任”的计算机。配置不正确的 LAT 可能会导致以下结果:
如果 LAT 误包括与 ISA Server 的外部网络适配器相关的 IP 地址,那些外部地址将被当作内部网络的一部分对待,并且它们可以访问内部网络资源,危及防火墙安全设置。
如果 LAT 没有包括内部网络中的整个 IP 地址范围,内部客户端请求则可能得不到正确的处理。例如,当一个内部客户端向一个没有在 LAT 中进行定义的内部计算机发送请求时,ISA Server 就将该请求路由至 Internet 或重定向至 Firewall 服务,因为不在 LAT 中的所有计算机都被认为是外部资源。
该白皮书描述了如何在安装过程中构建 LAT。并详细描述了一些特殊考虑,它们主要取决于您的网络配置以及 ISA Server 支持的客户端类型。
概念和过程
此部分包括:
构建 LAT
ISA Server 客户端和 LAT
构建 LAT
在安装过程中,既可以手动输入内部 IP 地址范围,使其包括在 LAT 中,也可以选择 ISA Server 基于 Windows Routing Table 自动构建 LAT。
若要在安装过程中输入 IP 地址范围,在标题为 Enter the IP address ranges that span the internal network address space(输入横跨内部网络地址空间的IP 地址范围)的安装页面中执行以下任一操作:
手动配置 LAT
在 From 框中键入一个起始地址,在 To 框中键入一个结束地址,再单击 Add。
重复该步骤,直至将所有想要的 IP 地址范围都包括在 LAT 中。
自动配置 LAT
单击 Table。
若要包括由 IANA 定义的 IP 地址范围以作为专用,请选择 Add the following private ranges(添加下列专用范围)。 这些专用 IP 地址范围永远不会在 Internet 上使用,并且可以安全地包括在 LAT 中。
若要通过 Windows 路由表中包括的信息构建 LAT,请选择 Add address ranges based on the Windows 2000 routing table(基于 Windows 2000 路由表添加地址范围)。
在 Select the address ranges that are associated with the following internal network adapters(选择与下列内部网络适配器关联的地址范围)中,选择您想将其地址范围放在 LAT 中的内部网络适配器。需要注意的是,与用于外部网络的适配器关联的地址范围都不应该选择包括在 LAT 中。
安装结束以后,可以通过 ISA Management 修改 LAT,操作步骤如下:
在 ISA Management 中,单击以展开 Network Configuration(网络配置)节点,再单击 Local Address Table (LAT) 。在细节窗格中,您可以看见定义该内部网络的 IP 地址范围。
若要添加其他地址或地址集,右键单击 Local Address Table (LAT) 文件夹,单击New,再单击LAT Entry。
在 From 和To 字段中输入 IP 地址的范围。如果想定义单台服务器,在这两个字段中键入相同的 IP 地址。
如果需要,为该项提供一个 Description,再单击 OK。
特殊考虑
在构建 LAT 时,需要考虑以下方面:
在手动构建 LAT 时,推荐不要指定重叠的 IP 地址范围,这可能会导致意外的性能问题。
在手动构建 LAT 时也不能指定重复范围。若要获得更多信息,请参看 Microsoft 知识库中的文章 279928 “错误信息:ISA Server 不能保存属性。该 IP 范围已存在于本地地址表中”。
当从 Windows 路由表自动构建 LAT 时,确保该表首先进行了正确的配置。路由表中任何不正确或不完整的信息都将在 LAT 中进行复制。
在由不同子网(通过路由器进行连接)上多个网络组成的复杂内部网上,确保所有的子网都包括在 LAT 中。否则,丢失子网上的内部客户端将被看作是外部的,并且因此变得“不可信任”。自动构建 LAT 时,使用路由工具或动态路由协议(如路由信息协议,RIP)将子网添加到 Windows 路由表中。
默认网关永远不应该在 ISA Server 计算机的内部接口上进行设置。相反,在一个复杂网络中,应该为内部网络创建静态路由,从而为 ISA Server 提供到达所有子网的永久路径。使用路由工具创建这些路由。进行此操作的最简单方法是定义包括 ISA Server 计算机上所有子网的无类别路由。无类别路由合并了多个子网地址,这些地址将相同的高序比特共享到一个逻辑网络中。该子网掩码进行了缩减,取走了地址网络部分的比特,并将它们添加了主机部分。例如:
C 类网络地址
NET199.199.5.0(1100 0111.1100 0111.0000 0101.0000 0000)
NET199.199.6.0(1100 0111.1100 0111.0000 0110.0000.0000)
NET199.199.7.0(1100 0111.1100 0111.0000 1100.0000.0000)
MASK255.255.252.0 (1111 1111.1111 1111.1111 1100.0000 0000)
为了进行路由,只有被子网掩码覆盖的比特才被使用,并且所有这些地址都显示为同一网络的部分,以进行路由。大部分路由器都支持无类别路由。使用 route -p 命令使计算机重新启动间的输入持续。
ISA Server 客户端和 LAT??剏????#092;??? ?1遐?
此部分包括:
Firewall 客户端
SecureNAT 客户端
Firewall 客户端
Firewall 客户端将 LAT 与本地域表 (Local Domain Table,LDT) 结合使用,以判断 Winsock 应用程序发出的请求是外部的并应该发送至 ISA Server 计算机,还是内部的并应该直接发送至 LAT 中的计算机。LDT 包括由 ISA Server 托管的内部网络上的所有域的名称,并且不应包括外部域名称。
LAT 和 LDT 都是在 ISA Server 上集中进行维护的。在 Firewall 客户端组件的安装过程中,每个表的副本都被安装到客户端计算机上。LAT 位于 Msplat.txt 文件中,LDT 位于 Mspclnt.ini Firewall 客户端配置文件中。这些文件通过控制通道自动在客户端计算机上进行更新,默认每 6 个小时进行一次,或者在客户端计算机重启时进行。也可以通过单击客户端计算机上的 Firewall 客户端选项对话框中的 Update Now( 强制刷新。
因为 ISA Server 以一定的时间间隔使用从服务器上下载的新版本覆盖 Msplat.txt 文件,所以,每当该文件更新时,在客户端所做的任何更改都将丢失。为了避免这种情况发生,使用一个文本编辑器创建一个名为 Locallat.txt 的自定义客户端 LAT,并将它放置在客户端计算机的 Firewall 客户端文件夹中。也可以添加被客户端识别为内部网络部分的额外的 IP 地址范围。在下面的示例中,第一项是一个 IP 地址范围,每二项是第二个 IP 地址(不是子网掩码):
10.51.0.010.51.255.255
10.52.144.10310.52.144.103
Firewall 客户端按以下步骤处理 IP 请求:
当客户端计算机上的 Winsock 应用程序试图连接到一个 IP 地址时,Firewall 客户端检查 LDT,以判断该 IP 地址是在内部网络上还是在该网络的外部。如果在 LDT 中发现该域名,名称解析就由该客户端完成。否则,该客户端就将该请求传送给一台外部 DNS 服务器,请求 ISA Server 代表它解析该名称。
在名称解析返回目标服务器的 IP 地址以后,Firewall 客户端检查 LAT 和 Locallat.txt,以判断该地址是否是本地的。对于内部地址,该客户端直接进行连接。否则,该请求就搜寻 ISA Server 计算机上的 Firewall 服务。
SecureNAT 客户端
SecureNAT 客户端不使用 LAT 区分内部和外部计算机。相反,对于外部资源的请求是由 ISA Server 代替 SecureNAT 客户端发出的。在客户端和 ISA Server 之间未配置路由器的简单网络中,SecureNAT 客户端的默认网关设置被设置成 ISA Server 内部网络适配器的默认 IP 地址,可以在 TCP/IP 设置中为每台客户端进行手动设置,也可以使用 DHCP 进行自动设置。
在 SecureNAT 客户端和 ISA Server 内部适配器之间带有路由器的复杂网络中,该技术则不适用。相反,SecureNAT 客户端需要一些路由机制来获得对 ISA Server 的请求。SecureNAT 客户端的默认网关应该设置成本地子网中路由器的 IP 地址,并且该链中至 ISA Server 的每个路由器都应该为 ISA Server 内部适配器提供最短的路由。需要注意的是,距 ISA Server 最近的路由器必须配置为将 Internet 流量路由至内部适配器接口,并且该路由器不应该配置为丢弃指向内部网络以外地址的数据包。
方案
此部分包括以下方案:
在三宿主外围网络中配置 LAT
在背靠背外围网络中配置 LAT
在 VPN 中配置 LAT
在三宿主外围网络中配置 LAT
在一个三宿主的外围网络(也被称作 DMZ、网络隔离区、屏蔽子网)中,ISA Server 计算机被设置了三个网络适配器:
一个网络适配器连接到内部网络。
第二个网络适配器连接至外围网络中的网络服务器。
第三个网络适配器连接到 Internet。
在这种方案中,外围网络中的计算机配置成带有公用 IP 地址,并且不作为内部网络的一部分而受到信任。这些公共 IP 地址不应该包括在 ISA Server LAT 中。数据包从外部网络路由至外围网络,并且这些路由的数据包不易受 ISA Server 访问规则的影响。相反,应该启用数据包过滤和 IP 路由。
在背靠背的外围网络中配置 LAT
在背靠背的外围网络配置中,一台 ISA Server(在 Firewall 或 Integrated 模式中进行配置)位于外围网络的任一边。 一台服务器 (ISASERVER1) 位于内部网络和外围网络之间。 第二台服务器 (ISASERVER2) 位于外围网络和外部网络 (Internet) 之间。
在这种方案中,ISASERVER1 上的 LAT 应该包括内部网络的 IP 地址。 ISASERVER2 上的LAT 应该包括 ISASERVER1 的外部 IP 地址,以及外围网络中所有服务器的 IP 地址。
在此配置中,外围网络中的服务器能够包括公用 IP 地址或专用 IP 地址。如果外围网络包括专用 IP 地址,将应用访问策略规则。需要注意的是,尽管外围网络包括专用 IP 地址,它也不作为内部网络的部分受到信任,并且它的专用 IP 地址将不是 ISASERVER1 中 LAT 的部分。如果外围网络包括公用 IP 地址,将不会应用访问策略规则— 流量被路由,并且 IP 路由和数据包过滤将被启用。
在 VPN 中配置 LAT
虚拟专用网络(Virtual private network,VPN))连接使组织可以拥有通过公用网络(如 Internet)与其他组织进行连接的路由连接,而同时维护安全的通信。例如,VPN 连接可以用来连接地理分散的办公室。Internet 上路由的 VPN 连接逻辑上相当于一个专用广域网 (WAN) 链接。 例如,您也许可以在组织的总部和分公司之间设置一个网关-网关的 VPN 通道。
在本地网络上的 ISA Server 上运行本地 VPN 向导(Local VPN Wizard),并在远程网络的 ISA Server 上运行远程 VPN 向导(Remote VPN Wizard)。当本地网络上的计算机与远程网络上的计算机进行通信时,数据即进行封装,并通过 VPN 通道进行发送。
在运行 Local VPN Wizard 时, 指定以下 IP 地址范围:
远程内部网络上的 IP 地址范围,可以被本地 VPN 客户端使用。包含该地址范围的静态路由被自动创建。此范围应该在该远程计算机的 LAT 中。
本地内部网络上的 IP 地址范围,可以被远程网络上的 VPN 客户端使用。可以从整个 LAT 中进行选择,并移除您不想被远程网络中的 VPN 客户端使用的地址。然后,在运行远程 VPN 向导配置远程 VPN 终端时,一个静态路由即被自动创建(使用您指定的地址)。
此外,还需注意以下两点:
可以通过网关-网关 VPN 连接来访问的所有网络在 LAT 中都必须可用,因为它们是作为一个单一的网络共同进行有效工作。在客户端-网关的 VPN 方案中,只有客户端计算机才成为它连接的网络的一部分。
分配给 VPN 客户端的任何地址都应该在 LAT 范围中。
其他有用信息
此部分包括:
常见的 LAT 错误和事件
使用 route 命令行工具
常见的 LAT 错误和事件
以下列表列举了一些与 LAT 相关的常见 ISA Server 错误和事件。
错误 在修改 LAT 或删除一个 LAT 项时,接收到以下一条或多条错误信息:
ISA Server cannot save the properties (Error: 0x80040376)(ISA Server 不能保存该属性)
ISA Server cannot delete the object (Error: 0x80040376) (ISA Server 不能删除该对象) IP 地址 IP_address 是发布服务器上的一个内部地址。 服务器发布规则 Rule_Name 将客户端请求转发至该 IP 地址。
原因 当您试图删除正在服务器发布规则中使用的 LAT 项时会导致该错误。
解决方法 删除该服务器发布规则,或者确保该 LAT 包括此发布服务器的 IP 地址。要获得更多信息,请参看 Microsoft 知识库中的文章 250293, “显示 ISA Server 错误信息‘不能保存对 LAT 的修改’”。
错误 在修改 LAT 时,您可能会接收到以下错误信息:
ISA Server cannot save the properties.(ISA Server 不能保存该属性。) (Error 0x80040340. The IP range already exists in the LAT}(该 IP 范围已经存在于 LAT 中)
原因 如果您试图输入当前 LAT 项的一个精确副本就会导致该错误。不推荐在 LAT 中使用??剏????#092;??? ?1遐?重叠项,这可能会导致意外的性能问题。不允许在 To(至)和 From(从)范围中使用某一项的副本。
解决方法 不要输入重复的 IP 范围,并且避免在可能的情况下输入重叠的范围。要获得更多信息,请在 Microsoft 知识库中参看文章 279928,“错误消息:ISA Server 不能保存属性。 该 IP 范围已经存在于本地地址表中”。
错误 在阵列安装中配置 LAT 时,当您试图连接至 ISA 管理中的阵列时将会接收到以下错误信息:
ISA Error.(ISA 错误。) The operation failed..(操作失败……) (Error 0x8007203a). The server is not operational.(服务器没有运行。)
原因 当您无意中将 LAT 配置为只包括外部接口,且内部网络成为 ISA Server 的外侧时会导致该错误。该阵列将不能查询 Active Directory 进行配置,并且 ISA Server 控制服务也不会启动。
解决方法 若要修复 LAT,您需要移至另一台计算机或正在运行 ISA Management 用户界面的 ISA 阵列。如果以上两者均不可用,可以在连接至该域的 Windows 计算机上安装 ISA Management 工具。在 ISA Management 中,单击 ISA Management 根节点下的 Connect to(连接至),并指定您想管理的阵列。然后可以修改 LAT 以获得正确的值,并重新启动受影响阵列中的 ISA Server 计算机。要获得更多信息,请参看 Microsoft 知识库中的文章 282035, “如果 LAT 配置阻止对域控制器的访问,则不能控制 ISA”。
记录事件 7023/7024/11009/12012/13110
错误 在运行 Internet Connection Wizard (ICW) for Small Business Server 2000 或安装了 ISA Server 的 BackOffice Server 2000 时,您可能会接收到以下错误信息:
The Internet Connection Wizard was interrupted because of an error or user intervention.(因为发生某一错误或用户干预,该 Internet Connection Wizard 被中断。) Details have been recorded in the file Icwlog.txt.(详细情况已被记录在 Icwlog.txt 文件中)
The specified IP address of your local network card is not recorded in the Local Address Table (LAT) of ISA server.(本地网卡指定的 IP 地址没有记录在 ISA server 的本地地址表 (LAT) 中。) You must either change the IP address of your network card to one that is recorded in the LAT, or edit the LAT to include this IP address.(您必须将网卡的 IP 地址修改成在 LAT 中记录的地址,或者编辑 LAT 以包括该 IP 地址)
原因 如果服务器接口 IP 地址不在LAT 中,这些错误就会发生。在存在两个逻辑网络接口(例如,一个网络接口和一个点对点串行协议适配器,如拨号网络接口适配器),且这两个接口都有公用 IP 地址的情况下,这种错误最为常见。此错误发生的原因可能是修改了服务器上内部网络接口的 IP 地址。
解决方法 修改服务器上网络适配器的 IP 地址,将它包括在 LAT 中,或者修改 LAT,使其包括一个包含某一接口的 IP 地址的 IP 地址范围。需要注意的??剏????#092;??? ?1遐?是,为了拥有最佳的安全性,不推荐将公用 IP 地址放置在 LAT 中。要获得更多信息,请参看 Microsoft 知识库中的文章 293286,“当服务器在 LAT 中没有接口时,Internet Connection Wizard 就不会成功”。
记录事件 7024/14017
事件 14017 不正确的网络配置。该服务器地址不是内部的,并且不在 LAT 中。
操作 检查为该服务器的内部网络适配器配置的 IP 地址是否包括在 LAT 中。
事件 14089 服务器发布规则 [%1] 失败。不能为该服务器 %2 创建会话。位置 %3。
操作 检查内部服务器地址是否包括在 LAT 中。
事件 14119 找不到进行数据包过滤的外部接口。
操作 检查 LAT 是否包括与 ISA Server 外部接口关联的地址。
事件 14120 ISA Server 服务不能创建数据包过滤器 %1。
操作 当 LAT 配置和 Windows 2000 路由表发生冲突时,该事件即发生。检查这两个表以查找冲突源。如果 LAT 中不存在冲突,则检查该事件错误的其他可能原因,请参看 Microsoft 知识库中的文章 288396, “ISA Server 事件 14120 被记录,并且不能创建数据包过滤器”。
事件 14121 数据包过滤器拨出接口不能进行重新绑定。
操作 检查 LAT 是否配置正确。
事件 14123 创建 IP 包过滤器失败。
操作 检查 LAT 是否配置正确。
使用 Route 命令行实用工具
可以使用 Route 命令行工具查看并编辑计算机的 IP 路由表。Route 命令和语法如下所示:
route [-f] [-p] [Command [Destination] [mask Netmask] [Gateway] [metric Metric]] [if Interface]]
-f 清除所有网关入口的路由表。
-p 与 add 命令一起使用时使路由具有永久性。
Command 指定您想运行的命令 (Add/Change/Delete/Print)。
Destination 指定该路由的网络目标。
mask Netmask 指定与网络目标相关的网络掩码(也被称作子网掩码)。
Gateway 指定网络目标定义的地址集和子网掩码可以到达的前进或下一跃点 IP 地址。
metric Metric 为路由指定一个整数成本值标(从 1 至 9999),当在路由表(与转发的数据包目标地址最匹配)的多个路由中进行选择时可以使用。
if Interface 为可以访问目标的接口指定接口索引。若要获得一个接口列表和它们相应的接口索引,使用 route print 命令的显示功能。可以使用十进制或十六进制值进行接口索引。
/? 在命令提示符处显示帮助。
示例
若要显示 IP 路由表的全部内容,请键入:
route print
若要显示以 10. 起始的 IP 路由表中的路由,请键入:
route print 10.*
若要添加带有 192.168.12.1 默认网关地址的默认路由,请键入:
route add 0.0.0.0 mask 0.0.0.0 192.168.12.1
若要向带有 255.255.0.0 子网掩码和 10.27.0.1 下一跃点地址的 10.41.0.0 目标中添加一个路由,请键入:
route add 10.41.0.0 mask 255.255.0.0 10.27.0.1
若要向带有 255.255.0.0 子网掩码和 10.27.0.1 下一跃点地址的 10.41.0.0 目标中添加一个永久路由,请键入:
route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1
若要向带有 255.255.0.0 子网掩码、10.27.0.1 下一跃点地址且其成本值标为 7 的 10.41.0.0 目标中添加一个路由,请键入:
route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7
若要向带有 255.255.0.0 子网掩码、10.27.0.1 下一跃点地址且使用 0x3 接口索引的 10.41.0.0 目标中添加一个路由,请键入:
route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 if 0x3
若要删除到带有 255.255.0.0 子网掩码的 10.41.0.0 目标的路由,请键入:
route delete 10.41.0.0 mask 255.255.0.0
若要删除以 10. 起始的 IP 路由表中的所有路由,请键入:
route delete 10.*
若要将带有 10.41.0.0 目标和 255.255.0.0 子网掩码的下一跃点地址从 10.27.0.1 修改为 10.27.0.25,请键入:
route change 10.41.0.0 mask 255.255.0.0 10.27.0.25
总结
在安装过程中对 Windows 路由表和 LAT 进行认真配置可以确保您避免与不正确或不完整的 LAT 设置相关的后期问题,并通过正确识别内部的、可信任的 IP 地址和外部的、不可信任的地址来保证网络的安全。仔细将所有子网的内部地址都包括在 LAT 中,并排除所有不是内部网络部分的外部地址。