比如Console.WriteLine((Dns.GetHostEntry(IPAddress.Parse("192.168.1.123"))).HostName);
输出的还是192.168.1.123

解决方案 »

  1.   

    用Dns.GetHostByAddress(IPAddress.Parse("192.168.1.123"))试试.
      

  2.   

    要引用
    不是
    using system.net
    就是 
    using system.net.dns
    反正大概是这个意思.要用到DNSDns.GetHostByAddress(IPAddress.Parse("192.168.1.123"));

    Dns.GetHostByAddress(Request.UserHostAddress());
      

  3.   

    不引用是没法通过编译的
    我是说解析出来的hostname不是主机名 而还是IP地址 我想应该是局域网里的主机的主机名都没有存在DNS服务器里 也许需要一个局域网内DNS服务器才能成功 
    有没有别的办法呢?网上邻居里的主机名是怎样查到的?
      

  4.   

    Dns.GetHostByAddress(IPAddress.Parse("192.168.1.123")); 
    或 
    Dns.GetHostByAddress(Request.UserHostAddress()); 
    哈哈 没有这么简单处理的 除非你有个固定的IP地址 如果是动态IP的话就有问题!
      

  5.   

    嗯 是个问题 那网上邻居上看到的本地工作组主机的主机名可否通过System.Net空间的类得到?
      

  6.   

    直接
    ping  168.192.0.111