DNS 是否可以将流量引导至不同的端口?

DNS 是否可以将流量引导至不同的端口?

可能重复:
如何使用 DNS 将域名重定向到我的服务器上的特定端口

现在我有一个 DNS CNAME 记录,它ftp.angryoctopus.net为实际的 FTP URL 域创建了一个别名,即angryoctopus.net:65021

目标是客户端能够ftp://ftp.angryoctopus.net/在其浏览器的地址栏中输入内容,然后直接转到我的服务器上的 Angry Octopus 的 FTP 站点 - 该站点托管在端口 65021。

主机名当然无法解析。

是否有可能以某种方式实现这种类型的别名,还是我只是在做无用功?这让我想起了 DynDNS,几年前我曾用它来做某事。DynDNS 如何像那样欺骗端口,我可以模仿它来实现这一点吗?

我应该补充一点,这是在独立服务器上运行的,托管多个 FTP 站点。我使用 Windows Server 2003 w/SP2 进行 DNS 和 IIS 6.0

答案1

DNS 不是实现此目的的方法。DNS 将名称与 IP 地址相关联。您可以使用 DNS 来告诉互联网 angryoctopus.net 位于 1.2.3.4,而 ftp.angryoctopus.net 与 angryoctopus.net 位于同一位置。DNS 不关心端口。

这可以通过网络地址解读(NAT)。在互联网和 FTP 服务器之间放置防火墙,它可以将标准 FTP 流量转换到您想要的端口。具体实现方式因防火墙而异。如果您有防火墙,它很可能可以做到这一点。如果没有,有数百种不错的选择。我喜欢阿斯塔罗

答案2

无法对所有协议都执行此操作。唯一可以对 HTTP 执行此操作的原因是Location响应标头可用于将 HTTP 客户端定向到任意 URL。大多数协议没有这样的重定向功能,而是必须使用类似 SNAT 的东西。

相关内容