最近在學習.NET下的網路編程,關於它的方便和強大就不說了,以下是個人學習過程的一些體會,整理如下.
.NET網路編程主要涉及到兩個命名空間:System.Net和System.Net.Sockets
先來看看System.Net命名空間
(1)Dns類
public static class Dns
Dns 類是一個靜態類,它從 網際網路網域名稱系統 (DNS) 檢索關於特定主機的資訊。
在 IPHostEntry 類的執行個體中返回來自 DNS 查詢的主機資訊。如果指定的主機在 DNS 資料庫中有多個入口,則 IPHostEntry 包含多個 IP 位址和別名。
Dns包含一些靜態方法,最重要莫過於GetHostEntry()方法了.
如:
IPHostEntry hostInfo = Dns.GetHostEntry("www.microsoft.com");
(2)IPHostEntry類
public class IPHostEntry
IPHostEntry 類將一個網域名稱系統 (DNS) 主機名稱與一組別名和一組匹配的 IP 位址關聯。
IPHostEntry 類作為 Helper 類和 Dns 類一起使用。
(3)IPAddress 類
public class IPAddress
IPAddress類包含電腦在 IP 網路上的地址。
(A)在該類中有一個 Parse()方法,可以把點分的十進位IP表示轉化成IPAddress類,方法如下:
IPAddress address = IPAddress.Parse(“192.168.0.1”);
(B)IPAddress提供4個唯讀欄位
Any 用於代表本地系統可用的任何IP地址
Broadcase 用於代表本網的IP廣播位址
Loopback 用於代表系統的傳回位址
None 用於代表系統上沒有網路介面
(4)IPEndPoint類
public class IPEndPoint : EndPoint
IPEndPoint 類包含應用程式串連到主機上的服務所需的主機和本地或遠程連接埠資訊。通過組合服務的主機 IP 位址和連接埠號碼,IPEndPoint 類形成到服務的連接點。
IPEndPoint(IPAddress, Int32)
IPEndPoint(Int64, Int32)
用指定的地址和連接埠號碼初始化 IPEndPoint 類的新執行個體。
一個簡單的例子:顯示microsoft伺服器的IP.
Code
static void Main(string[] args)
{
IPHostEntry IPHost = Dns.GetHostEntry("www.microsoft.com");
IPAddress[] addr = IPHost.AddressList;
Console.WriteLine(addr.Length);
for (int i = 0; i < addr.Length; i++)
{
Console.WriteLine(addr[i]);
}
Console.Read();
}
結果如下:
主要參考資料:MSDN