C#如何获取DNS服务器地址?????

解决方案 »

  1.   

    是获取本机TCP/IP属性里面的DNS地址吗?如果是的话,可以参考
    using namespace System.Net.NetworkInformation;
    IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties()
      

  2.   

    你是希望获得正在使用的DNS,还是做DNS探索器?
      

  3.   

    using System.Net.Sockets;
    using System.Net;Socket sendsocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);string hostname = Dns.GetHostName();
    IPHostEntry iphostendpoint = Dns.GetHostEntry(hostname);
    IPAddress[] address = iphostendpoint.AddressList;获取本机的
      

  4.   

    刚才查了一下,原则IPGlobalProperties类并不能获得DNS地址楼主试下下面的代码:using System.Net
    IPHostEntry myHost = new IPHostEntry(); //得到本地主机的DNS信息
      myHost = Dns.GetHostByName(Dns.GetHostName());
      

  5.   


    using namespace System.Net.NetworkInformation;public IPAddressCollection GetDnsAddresses()
        {
            NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
            foreach (NetworkInterface adapter in adapters)
            {            IPInterfaceProperties adapterProperties = adapter.GetIPProperties();
               return  adapterProperties.DnsAddresses;           
            }
        }
      

  6.   

    是2.0中新加的:下表列出了由 IPInterfaceProperties 类型公开的成员。  受保护的构造函数 
      名称  说明  
      IPInterfaceProperties  初始化 IPInterfaceProperties 类的新实例。 
    页首 
     公共属性 
      名称  说明  
      AnycastAddresses  获取分配给此接口的任意广播 IP 地址。 
      DhcpServerAddresses  获取此接口的动态主机配置协议 (DHCP) 服务器的地址。 
      DnsAddresses  获取此接口的域名系统 (DNS) 服务器的地址。 
      DnsSuffix  获取与此接口关联的域名系统 (DNS) 后缀。 
      GatewayAddresses  获取此接口的网关地址。 
      IsDnsEnabled  获取 Boolean 值,该值指示此接口是否被配置为向域名系统 (DNS) 服务器发送名称解析查询。 
      IsDynamicDnsEnabled  获取 Boolean 值,该值指示此接口是否被配置为自动向域名系统 (DNS) 注册其 IP 地址信息。 
      MulticastAddresses  获取分配给此接口的多路广播地址。 
      UnicastAddresses  获取分配给此接口的单播地址。 
      WinsServersAddresses  获取 Windows Internet 名称服务 (WINS) 服务器的地址。 
      

  7.   

    thank you very much