[C#] 基本網路技術(二) IP 位址與主機名稱轉換

  • 13350
  • 0

[C#] 基本網路技術(二) IP 位址與主機名稱轉換

Introduction

我們知道 IP 解決了網路上電腦的識別問題,但是卻不容易記住,因此 DNS (Domain Name System) 網路名稱系統被發展出來。

DNS 專門用來將 IP 位址轉換成為有意義的文字,方便識別與記憶。

.net Framrework 類別庫內建了處理 IP 位址與網欲名稱的的相關類別,應用這些類別可以解析網域名稱並且完成 IP 位址的轉換

工作。

 

Example

 


//引用命名空間
using System.Net;
using System.Net.Sockets;

namespace TestIPAddress {
    class Program {
        static void Main(string[] args) {
            try {
                GetIPAddress();
            }
            catch (SocketException SockEx) {
                Console.WriteLine(SockEx.Message);
                GetIPAddress();
            }
            Console.ReadKey();
        }
        static void GetIPAddress() {
            Console.WriteLine("輸入所要解析的主機名稱 (ex: www.pchome.com.tw):");
            //取得主機名稱
            string pHostName = Console.ReadLine();

            IPHostEntry myAddress = Dns.GetHostEntry(pHostName);

            Console.WriteLine("{0} 所對應的 IP 位址如下 : ", pHostName);
            IPAddress[] myIPAddress = myAddress.AddressList;

            foreach (IPAddress add in myIPAddress)
                Console.WriteLine(add);

            Console.WriteLine("輸入所要解析的 IP 位址 :");
            //取得 IP 位址
            string pAddress = Console.ReadLine();
            IPHostEntry myHostName = Dns.GetHostEntry(pAddress);
            Console.WriteLine("{0} 所對應的 主機名稱 如下 : ", pAddress);

            Console.WriteLine(myHostName.HostName.ToString());
        }
    }
}

 

輸出結果

2010-01-16_164250

2010-01-16_164352

 

Link

三小俠  小弟獻醜,歡迎指教