将域名链接到端口号

将域名链接到端口号

我有一台 [游戏] 服务器 (CentOS),大约有 10 个已使用的端口。对于一个特定的游戏,我有 2 个服务器:一个私人服务器和一个公共服务器。

它们的 IP 是相同的,因此为了区分它们,用户必须使用mydomain.com:[portnumber]

有没有办法可以配置 CentOS 以自动获取类似的内容subdomain.mydomain.com并将其转换为mydomain.com:[portnumber]或简单localhost:[portnumber]

DNS 就是用来做这个的吗?

答案1

如果它完全是你的应用程序,并且你可以控制你的 DNS,你可以定义一个SRV记录为您的游戏。您的客户端必须明白您已定义记录,_gamename._tcp.example.com SRV以便为用户提供一种方式来通过example.com正确的端口访问服务器。

如果您只是使用现有的游戏服务器并托管它,这听起来很复杂并且几乎不可行,但这是在 DNS 中包含端口号的唯一方法。

如果这不可能,只需为公共服务器采用“正常”端口(这样用户就不必担心),为私人服务器采用“其他”端口(您必须指定端口,但用户群有限,因此“总担心量”较小。)

答案2

DNS 就是用来做这个的吗?

不,不是。DNS 用于将域名解析为 IP 地址。端口号由应用程序决定。

如果你需要在同一端口上运行多个服务实例,通常需要使用一个可以理解多个实例的服务器(例如带有 VirtualHosts 的 Apache),超级服务器某种类型的多个 IP 地址,或者具有深度数据包检测功能的防火墙,可以确定正确的端口地址转换使用(但在这种情况下防火墙必须了解正在使用的应用程序协议)。

相关内容