分配给远程访问客户端的 IP 地址类型分配给远程访问客户端的 IP 地址可以来自以下地址范围 子网内地址范围这是远程访问服务器所连接到的内部网子网上的一个地址范围 每当远程访问服务器从 DHCP 服务器获得远程访问客户端的 IP 地址或者当手动配置的静态池包含某个被连接子网的地址范围内的 IP 地址时就会使用这类地址使用子网内地址的优点在于不需要对路由基础结构作出任何变更 子网外地址范围这是表示逻辑地连接到远程访问服务器的一个不同子网的一个地址范围 当静态池包含位于一个单独的子网上的 IP 地址时就会使用这类地址使用子网外地址的优点在于远程访问客户端的 IP 地址更容易识别 地址的类型决定了流量从 Intranet 节点转发到连接的远程访问客户端的方式当某个连接的远程访问客户端发送一个包时将发生以下过程包将通过 PPP 链路发送到远程访问服务器 远程访问服务器使用 IP 转发过程来将包转发到某个连接的子网上的临近主机或者更可能将它转发到一个连接的 Intranet(内部网) 上的一个临近路由器 关于 IP 转发过程的更多信息请参见理解 IP 路由表(Cable Guy 年月文章) 当流量被发送到远程访问客户端时将它传输到远程访问服务器的过程是不同的具体取决于远程访问客户端是分配到一个子网内地址还是分配到一个子网外地址针对子网内地址的包传输对于一个子网内地址远程访问服务器将充当一个代理地址解析协议(ARP)设备对于分配给连接的远程访问客户端的 IP 地址它要负责响应针对这些地址的 ARP Request 帧 远程访问服务器维护着分配给远程访问客户端的 IP 地址的列表并代表这些客户端响应 ARP 请求对于正在使用一个子网上的地址的远程访问客户端将包传输给它的过程如下远程服务器所连接到的 Intranet 子网上的一个节点发送一个 ARP Request 帧请求被分配到远程访问客户端的 IP 地址的节点的 MAC 地址 远程访问服务器接收 ARP 请求检查连接的远程访问客户端表并在找到一个匹配项的情况下使用一个包含它自己的 MAC 地址的 ARP Reply 消息来响应该 ARP 请求 Intranet 子网上的节点将包转发给远程访问服务器 远程访问服务器接收该包检查目标 IP 地址确定对应的 PPP 连接然后通过这个 PPP 连接转发该包 对于子网内地址邻近节点将执行直接的传输似乎就像远程客户端直接连接到邻近节点的子网上一样 邻近节点不知道目的地实际上是通过远程访问服务器来访问的子网外地址的包传输对于子网外地址远程访问服务器充当路由器在所连接到的子网上的节点(通常是路由器)和连接的远程访问客户端之间转发包 对于正在使用一个子网外地址的远程访问客户端将包传输给它的过程如下远程服务器所连接到的 Intranet 子网上的一个节点发送一个ARP Request帧请求对应于远程访问服务器的 IP 地址的 MAC 地址 远程访问服务器使用一个包含它自己的 MAC 地址的 ARP Reply 消息来响应该 ARP 请求 Intranet 子网上的节点将包转发给远程访问服务器 远程访问服务器接收该包检查目标 IP 地址确定对应的 PPP 连接然后通过这个 PPP 连接转发该包 对于子网外地址邻近节点执行间接传输把远程访问服务器当作是一个路由器为了使分配了一个子网外地址的远程访问客户端能够访问 Intranet 上的节点路由基础结构必须包含和子网外地址范围相匹配的路由并且这些路由要指向远程访问服务器的一个 Intranet 接口 为了添加这些路由您可以执行以下操作之一 由于对应于子网外地址范围的路由是自动添加到远程访问服务器的路由表中的您可以给远程访问服务器配置某种路由协议比如路由信息协议(RIP)或开放最短路径优先(OSPF)协议以便把不在子网上的路由传播到邻近路由器 把对应于子网外地址范围的路由当作静态路由添加到某个邻近路由器并配置该路由器来将那些路由传播到它的邻近路由器 对于没有使用诸如 RIP 或 OSPF 之类的路由协议的小型网络您还可以手动向路由器添加对应于子网外地址范围的路由获得 IP 地址的方法您可以将路由和远程访问服务配置为自动获得远程访问客户端的 IP 地址或者从某个静态 IP 地址池获得地址 这个配置将在您使用路由和远程访问服务器安装向导时进行您可以在IP选项卡中对路由和远程访问管理单元中的某个远程访问服务器的属性进行更改自动获得 IP 地址当配置为自动获得 IP 地址时路由和远程访问服务将指示 TCP/IP 的 DHCP 客户端组件使用 DHCP 来一次获得 个 IP 地址路由和远程访问服务在第一个远程访问客户端连接时(而不是在路由和远程访问服务器启动时)尝试获得前个 IP 地址 路由和远程访问服务把从 DHC P获得的第一个 IP 地址用于内部(Internal)接口(可从路由和远程访问管理单元中的IP路由\常规节点中看到) 后续的地址将在基于 IP 的远程访问客户端连接时分配给它们 在远程客户端断开连接时恢复的任何 IP 地址都将被重新使用当从 DHCP 获得的前个 IP 地址全都被同时使用而此时另一个远程访问客户端尝试建立连接时路由和远程访问服务将使用 DHCP 客户端组件来获得另外个地址 您可以通过改变HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ RemoteAccess\Parameters\Ip\InitialAddressPoolSize注册表项的值(DWORD)来修改一次获得的地址数量如果不能联系到一个 DHCP 服务器DHCP 客户端将返回从 到 的自动专用 IP 地址(APIPA)范围内的地址 APIPA 地址是子网外地址它们在 Intranet 路由基础结构中没有对应的路由 远程访问客户端被分配到一个 APIPA 地址但是却不能越过远程访问服务器开展通信注意存在一些允许将 APIPA 地址用作子网内地址或子网外地址的办法然而APIPA 地址的存在或者意味着存在配置错误或者连通性问题以至于无法连接到 DHCP 服务器或者意味着在 DHCP 服务器上的范围中缺乏用于远程访问服务器所连接到的子网的 IP 地址 这些问题应该纠正而不是配置这些方法来将 APIPA 地址用于远程访问客户端路由和远程访问服务尝试使用在路由和远程访问服务器属性的IP选项卡上的适配器中选择的接口来获得 DHCP 分配的地址如下图所示 这个适配器通常是在路由和远程访问服务器安装向导的网络选择页面上选择的 如果选择了错误的适配器(例如选择了Internet接口)那么使用该适配器来联系 DHCP 服务器的尝试就会失败从而返回 APIPA 地址 如果选择允许 RAS 选择适配器路由和远程访问服务就会在启动时随机挑选一个局域网接口来使用从而可能导致使用错误的适配器当路由和远程访问服务停止时它将发送 DHCPRelease 消息来释放通过 DHCP 获得的所有 IP 地址静态 IP 地址池静态地址池是一个或多个地址范围 当配置了一个静态 IP 地址时远程访问服务器就会将第一个地址范围中的第一个 IP 地址用于Internal(内部)接口 后续的地址将在基于 TCP/IP 的远程访问客户端连接时分配给它们 在远程客户端断开连接时恢复的任何 IP 地址都将被重新使用静态 IP 地址池中的地址范围可以是在子网内的地址范围子网外的地址范围或者是子网内或子网外地址的混合如果任何地址范围中的任何地址均是子网外地址您就必须添加路由来向 Intranet 基础结构汇总子网外地址范围以便发送到远程访问客户端的流量被转发到远程访问服务器然后再由远程访问服务器转发到适当的远程访问客户端 为了给路由提供最佳的地址范围汇总应该选择能够使用单个前缀和子网掩码来表示的地址范围 例如从到的地址范围可以表示为子网掩码为(/)地址用尽在使用上述任一种方法来获得地址时均有可能发生地址用尽的情况在自动获得 IP 地址时DHCP 服务器有时可能会用完远程访问服务器所连接到的子网的地址 当发生这种情况时DHCP 服务器不再响应针对该子网的地址请求而 DHCP 客户端将返回 APIPA 地址 远程访问客户端能够连接但是不能在 Intranet 上通信当您用完静态地址池中的地址时远程访问客户端就不能连接 由于远程访问服务器没有地址可分配IPCP 协商就不能完成连接尝试就会终止 对于运行 Windows 或 Windows XP 的远程访问客户端所显示的错误消息将是 Error : The remote computer terminated the control protocol(Error : 远程计算机已终止控制协议)为了避免地址用尽请执行以下步骤 当设置为自动获得 IP 地址时确保用于远程访问服务器所连接到的子网的 DHCP 范围包括足够的地址以便为可能同时连接到网络的远程访问客户端分配地址 当从静
|