1

根据我对 DNS 服务器的理解,一个简单的解释是,对于给定的主机名,DNS 服务器使用查找表来返回主机名的 IP 地址。

对于我的一个项目,我曾经通过 wifi 网络将客户端连接到服务器,并指定服务器在客户端上侦听的 IP 地址和端口。出现了一个新要求,要求在网络设置中指定 DNS 服务器,然后 DNS 服务器会返回我服务器的 IP 地址和端口号。

我上网查看了对A DNS服务器的请求/响应,我发现很多地方都提到端口号不是由DNS服务器发送的。这样对吗?

我已经在 Visual Studio 2005 中对我的项目进行了编码。是否有任何可以与现有 Visual Studio 项目集成的 DNS 服务器库/代码?是否有可能,对于特定的主机名,我可以在响应中指定端口号?

我已经检查了许多 C 语言中 DNS 服务器的源代码,例如 ldns/bind,但我还没有找到与 Visual Studio 集成的方法。

4

3 回答 3

1

You can specify an additional information about given domain in TXT DNS record. So, you could add text tag:value part into your domain TXT record.

于 2013-02-04T14:59:22.727 回答
1

这可能是用户试图定义的吗?DNS SRV 记录

于 2013-02-04T15:50:30.607 回答
0

这没有任何意义,端口不是主机域名的一部分。给定主机(=单个域名)可以运行任意数量的应用程序,即打开任意数量的端口。

您的想法需要将所需应用程序的某种形式的身份发送到 DNS 服务器以进行查找,或者它可以回复正在运行的服务及其端口的列表。它只是不能那样工作,至少据我所知。

没有什么可以阻止您在任何其他端口上运行 Web 服务器(通常在端口 80 上),例如在开发过程中经常使用的 8080。然后 URL 将是http://example.com:8080,并且由于浏览器仅在 DNS 中查找example.com部分,因此 DNS 无法覆盖端口号。

于 2013-02-04T14:34:08.423 回答