程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 局域網中根據IP地址反查主機的名稱(C#)

局域網中根據IP地址反查主機的名稱(C#)

編輯:.NET實例教程
你遇到過這種情況嗎?你的防火牆報告局域網中的某個IP地址的電腦正在攻擊你,但是防火牆卻沒有提示發出攻擊的電腦名稱,到底誰的電腦在攻擊呢(攻擊你的電腦可能是中毒了)?有一天早上你剛剛上班,打開電腦後發現連接不了服務器,到服務器那裡一看才知道,原來有人使用了服務器的IP地址,到底誰在使用服務器的IP地址呢?nslookup 可以實現域名(主機名)的反查IP地址。哈哈,但今天說的是用C#實現。

1. 根據IP地址獲得主機名稱

        /// <summary>
        /// 根據IP地址獲得主機名稱
        /// </summary>
        /// <param name="ip">主機的IP地址</param>
        /// <returns>主機名稱</returns>
        public string GetHostNameByIp(string ip)
        {
            ip = ip.Trim();
            if (ip == string.Empty)
                return string.Empty;
            try
            {
                // 是否 Ping 的通
                if (this.Ping(ip))
                {
                    System.Net.IPHostEntry host = System.Net.Dns.GetHostEntry(ip);
                    return host.HostName;
                }
                else
                    return string.Empty;
            }
            catch (Exception)
            {
                return string.Empty;
            }
        }
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved