NetScaler使用Virtual Server做端口映射的防火墙问题

今天在用户那边测试的时候,发现,通过NetScaler的Virtual Server直接来做端口转换访问虚拟桌面,发现,防火墙关闭的时候一切正常,防火墙开启以后,就无法使用了。Virtual Server中的services显示服务DOWN了。

刚去的时候,用户怀疑,是XenDesktop有问题,中间的通讯被防火墙Kill掉了。于是,检查防火墙的例外,8080,1494全部OK(2598没用,会话保持禁用了),但就是无法反问,也检查了launch.ica文件,发现IP:PORT正常。

于是怀疑NS的问题,结果一查,发现文章开始描述的结果,services挂掉了。于是怀疑是NS的端口探测问题,NS默认会去探测服务的可用性,如果挂掉,那么会把服务标记为DOWN,因为默认是通过ping来检查服务的可用性的。所以需要再防火墙中启用ping例外。

图中我们可以看到,service的默认monitor为ping-default,而且还没发删除。所以为了让服务保持active,那么必须开启防火墙的ping包权限。否则,NetScaler在ping不通主机的时候,就会导致service处于DOWN状态,从而导致虚拟桌面无法连接。