欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#使用Dns類實現(xiàn)查詢主機名對應(yīng)IP地址

 更新時間:2024年02月01日 11:20:24   作者:雪域迷影  
C#中的Dns類能夠與默認(rèn)的DNS服務(wù)器進(jìn)行通信,以檢索IP地址,這篇文章主要介紹了C#如何使用Dns類解析出主機對應(yīng)的IP地址信息,需要的可以參考下

C#中使用Dns相關(guān)類查詢主機名對應(yīng)的IP地址等信息

C#中的Dns類能夠與默認(rèn)的DNS服務(wù)器進(jìn)行通信,以檢索IP地址。

下面的DnsLookup示例代碼使用了以下名稱空間:

  • System
  • System.Net
  • System.Threading.Tasks

樣例應(yīng)用程序?qū)崿F(xiàn)一個控制臺程序(包),要求用戶輸入主機名(也可以添加一個IP地址),通過Dns.GetHostEntryAsync得到一個IPHostEntry。在IPHostEntry中,使用AddressList屬性訪問地址列表。

的所有地址以及AddressFamily都寫入控制臺。(代碼文件 DnsLookup/Program.cs):

using System;
using System.Threading.Tasks;
using System.Net;

namespace DnsLookup
{
    class Program
    {
        /// <summary>
        /// 樣例應(yīng)用程序?qū)崿F(xiàn)一個控制臺程序(包),要求用戶輸入主機名(也可以添加一個IP地址),
        /// 通過Dns.GetHostEntryAsync得到一個IPHostEntry。在IPHostEntry中,使用AddressList屬性訪問地址列表。
        /// 主機的所有地址以及AddressFamily都寫入控制臺。
        /// 
        /// </summary>
        /// <param name="args"></param>
        /// <returns></returns>
        static async Task Main(string[] args)
        {
            do
            {
                Console.Write("Hostname:\t");
                string hostname = Console.ReadLine();
                if (hostname.CompareTo("exit") == 0)
                {
                    Console.WriteLine("bye!");
                    return;
                }
                await OnLookupAsync(hostname);
                Console.WriteLine();
            } while (true);
        }

        public static async Task OnLookupAsync(string hostname)
        {
            try
            {
                IPHostEntry ipHost = await Dns.GetHostEntryAsync(hostname);
                Console.WriteLine($"Hostname: {ipHost.HostName}");
                foreach (IPAddress address in ipHost.AddressList)
                {
                    Console.WriteLine($"Address Family: {address.AddressFamily}");
                    Console.WriteLine($"Address: {address}");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
    }
}

在VS2017創(chuàng)建一個基于C#的控制臺應(yīng)用程序,運行應(yīng)用程序,輸入幾個主機名,得到如下輸出:

對于主機名 www.orf.at, 可以看到這個主機名定義了多個IP地址。

注意:

Dns類是比較有限的,例如不能指定使用非默認(rèn)的DNS服務(wù)器。此外,IPHostEntry的Aliasess屬性不在GetHostEntryAsync方法中填充。它只在Dns類的過時方法中填充。而且這些方法也不完全地填充這個屬性。要充分利用DNS查找功能,最好使用第三方庫。

到此這篇關(guān)于C#使用Dns類實現(xiàn)查詢主機名對應(yīng)IP地址的文章就介紹到這了,更多相關(guān)C#查詢主機對應(yīng)IP地址內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解C#枚舉中使用Flags特性

    詳解C#枚舉中使用Flags特性

    這篇文章主要介紹了C#枚舉中使用Flags特性的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • C#配置文件操作類分享

    C#配置文件操作類分享

    這篇文章主要分享了C#配置文件操作類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • C#實現(xiàn)將字符串轉(zhuǎn)換成日期格式的方法

    C#實現(xiàn)將字符串轉(zhuǎn)換成日期格式的方法

    這篇文章主要介紹了C#實現(xiàn)將字符串轉(zhuǎn)換成日期格式的方法,涉及C#操作時間及字符串的相關(guān)技巧,非常簡單實用,需要的朋友可以參考下
    2015-05-05
  • C# #define條件編譯詳解

    C# #define條件編譯詳解

    這篇文章主要介紹了C# #define條件編譯,告訴大家#define是用來做什么?如何使用#define,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • C#?TreeView控件使用技巧匯總

    C#?TreeView控件使用技巧匯總

    這篇文章主要介紹了C#?TreeView控件使用技巧匯總,TreeView控件在窗體應(yīng)用里面使用也是頻率比較高的,我們在使用TreeView一般是對資源的分層展示,類似數(shù)據(jù)結(jié)構(gòu)里面樹的凹入表示法
    2022-08-08
  • C#創(chuàng)建Windows服務(wù)的實現(xiàn)方法

    C#創(chuàng)建Windows服務(wù)的實現(xiàn)方法

    這篇文章主要介紹了C#創(chuàng)建Windows服務(wù)的實現(xiàn)方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-03-03
  • C#中的尾遞歸與Continuation詳解

    C#中的尾遞歸與Continuation詳解

    這篇文章主要介紹了C#中的尾遞歸與Continuation詳解,本文講解了遞歸與尾遞歸、尾遞歸與Continuation、Continuation的改進(jìn)等內(nèi)容,需要的朋友可以參考下
    2015-06-06
  • c#使用win32api實現(xiàn)獲取光標(biāo)位置

    c#使用win32api實現(xiàn)獲取光標(biāo)位置

    本文給大家匯總了2個使用C#實現(xiàn)獲取光標(biāo)位置的代碼,非常的簡單實用,第二種方法更為全面,推薦給大家。
    2016-02-02
  • C# 參考之訪問關(guān)鍵字:base、this

    C# 參考之訪問關(guān)鍵字:base、this

    由于靜態(tài)成員函數(shù)存在于類一級,并且不是對象的一部分,因此沒有 this 指針。在靜態(tài)方法中引用 this 是錯誤的。 索引器允許類或結(jié)構(gòu)的實例按照與數(shù)組相同的方式進(jìn)行索引。索引器類似于屬性,不同之處在于它們的訪問器采用參數(shù)。
    2008-03-03
  • C#實現(xiàn)學(xué)生模塊的增刪改查

    C#實現(xiàn)學(xué)生模塊的增刪改查

    這篇文章主要為大家詳細(xì)介紹了C#實現(xiàn)學(xué)生模塊的增刪改查,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01

最新評論