发现默认DNS的计算机

发现默认DNS的计算机,dns,network-programming,network-protocols,Dns,Network Programming,Network Protocols,我正在写一个小的DNS代理。它侦听端口上传入的UDP消息,并使用指定的DNS(例如google的DNS 8.8.8.8)解析这些消息,然后将响应发送回客户端 我希望能够检测机器使用的默认DNS。每个操作系统都有一个自动获取DNS服务器地址的选项。我想知道这是怎么做到的。在UDP、TCP或其他完全不同的协议之上有协议吗 我使用的是C#,但语言并不重要。查找当前计算机默认使用的DNS在很大程度上取决于您使用的操作系统和语言。如果您使用Java或.NET或其他独立于平台的语言,您可能不需要担心操作系统

我正在写一个小的DNS代理。它侦听端口上传入的UDP消息,并使用指定的DNS(例如google的DNS 8.8.8.8)解析这些消息,然后将响应发送回客户端

我希望能够检测机器使用的默认DNS。每个操作系统都有一个自动获取DNS服务器地址的选项。我想知道这是怎么做到的。在UDP、TCP或其他完全不同的协议之上有协议吗


我使用的是C#,但语言并不重要。

查找当前计算机默认使用的DNS在很大程度上取决于您使用的操作系统和语言。如果您使用Java或.NET或其他独立于平台的语言,您可能不需要担心操作系统的问题


客户端计算机通常在DHCP服务器的DHCP响应中“自动发现”要使用的DNS。也就是说,当他们收到自己的IP地址时,他们也会得到要使用的DNS服务器。他们还可能获得WINS服务器的地址和许多自定义选项。

您可以通过在coand提示符中键入ipconfig/all来找到DNS服务器。这将为您提供DNS服务器的地址