有什么方法可以为 ZerocIce 的 IceGrid 服务器指定节点端口/端口范围?

Any way to specify node port / port range for IceGrid server of ZerocIce?

我们正在使用 IceGrid 作为我们的一项分布式服务。因此,我们的客户端直接与注册表进行通信,该注册表保留了提供服务的 运行 服务器/节点的记录。我们对大多数配置使用默认值。现在我们遇到了一个问题:在IceGrid的manual1 and manual2中提到the client uses indirect binding and the server uses a port that is assigned by the operating system from the ephemeral port range.但是我们的网络策略不允许访问10000以下的端口号。所以我想知道是否有一些配置指定端口或端口范围的选项(以便我们可以明确告诉节点使用大于 10000 的端口号,并允许在网络策略中访问这些端口。

我们尝试使用 IceGrid.Node.Endpoints=tcp -h OUR_IP_ADDRESS -p 10232。但它似乎不起作用,因为分配的端口仍然是随机的(有时低于 10000)但不是 10232。

有没有人有类似的经历?非常感谢!

为IceGrid节点进程设置固定端口IceGrid.Node.Endpoints=tcp -h OUR_IP_ADDRESS -p 10232只会保证IceGrid节点进程使用该端口。它不会对 IceGrid 节点管理的服务器的配置产生任何影响。

如果要确保这些服务器使用大于 10000 的端口号,则需要更新服务器端点配置以使用固定端口(使用 -p PORT 选项)。

另一个更简单的选择是更新您的操作系统配置,以确保在符合您的策略的范围内分配临时端口。但是,更新此配置很可能需要管理权限。