我正在尝试使用远程桌面服务连接到负载平衡的 Windows 2008 R2 群集。从子网(.253)内部连接到服务器的 IP 地址(.253.16 和 .253.17)或集群地址(.253.20)没有问题。
问题是当我尝试从另一个子网(.251)连接时。我可以毫无问题地从 .251 远程访问 .253 子网内的其他非集群服务器(.253.12 和 .253.15)。当我在 .251 子网上时,我收到来自集群和其他服务器的 ping 回复。但是当我尝试通过远程桌面连接时,它会超时,但只能连接到集群上的任何 IP(.20、.17、.16)。
我的 ASA 5510 处理日志中的路由报告消息:Deny TCP (no connection) from 192.168.251.2/4283 to 192.168.253.16/3389 flag FIN PSH ACK
更新:确实,如果我有一台主机停机,它确实可以工作。
您描述的错误消息显示了 ASA 的状态数据包检查在起作用。“无连接”意味着:ASA 在其连接表中没有 192.168.251.2:4283 和 192.168.253.16:3389 之间的 TCP 连接条目。
我将按如下方式设置捕获:
其中 LAN251 是连接到 192.168.251.0/24 网络的接口,LAN253 是连接到 192.168.253.0/24 网络的接口。
然后尝试通过 RDP 连接并查看捕获中的内容。
我敢打赌,当您尝试连接到其中一个 IP 时,您会发现(您会看到一个 SYN 数据包从 192.168.251.2 上的随机端口 >1024 发送到 192.168.253.16/17/ 上的端口 3389 20),您将看到响应 (SYN-ACK) 从不同的 IP 地址返回,并且防火墙将接收该 SYN-ACK 数据包,但不会将其转发到您的 RDP 客户端。
如果是这种情况,则解决方案不在 ASA 上。您需要弄清楚如何设置您使用的任何集群或负载平衡平台,以便与 RDP 正常工作。
如果不是这种情况,请粘贴捕获,以便社区可以分析它们。
查看集群终端服务器上的防火墙设置。他们可能只为本地子网设置了允许。您只需修改这些规则,或添加新规则以允许来自其他子网的端口 3389(TS 网关的端口 443)上的连接。
如果这不起作用,请在此尝试一下,但可能是您的 ASA 没有允许从 .251 子网到集群 IP 的流量的规则。尝试 telnet 进入 ASA 并运行
sh run | gr access-
并查找文本类似于“permit ip xy251.0 255.255.255.0 xy253.0 255.255.255.240”
的行这样的行将只允许访问 .253 子网中的前几个 IP。