首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> 關於.NET

Socket 網路程式設計學習筆記 (1):常用網路類別與方法介紹

     編輯:關於.NET

前言

Socket 網路程式設計是後端開發核心技能。本系列從基礎類別開始,逐步建構完整通訊範例。此為第一篇,介紹最常用的網路類別與方法。

IP 位址操作類別

IPAddress

  • Parse 方法:點分十進位字串 → IPAddress 物件
    IPAddress addr = IPAddress.Parse("192.168.0.1");
  • 四個唯讀欄位:
    欄位用途
    Any代表本機所有可用 IP (監聽最常用)
    Broadcast區域網路廣播位址 (UDP 廣播用)
    Loopback回送位址 (127.0.0.1)
    None無網路介面

IPEndPoint

IP 位址 + 連接埠 = 端點,代表一個服務位置

  • 建構函式:
    • new IPEndPoint(long address, int port)
    • new IPEndPoint(IPAddress address, int port)
  • 屬性:Address、AddressFamily、Port、MaxPort、MinPort

DNS 相關類別

Dns 類別 (靜態方法)

方法說明回傳
GetHostName()取得本機主機名稱string
GetHostByName(string)依主機名稱查詢IPHostEntry
GetHostByAddress(IPAddress/string)依 IP 位址反向查詢IPHostEntry
Resolve(string)萬用查詢:接受主機名或 IP,自動判斷IPHostEntry

IPHostEntry

封裝 DNS 查詢結果:

  • AddressList:IPAddress[] 陣列
  • Aliases:string[] 別名陣列
  • HostName:主機名稱字串

常用程式碼片段


// 取得本機所有 IP
string hostName = Dns.GetHostName();
IPHostEntry entry = Dns.GetHostByName(hostName);
foreach (IPAddress ip in entry.AddressList)
{
    Console.WriteLine(ip);
}

// 解析使用者輸入 (可能是名稱或 IP)
IPHostEntry result = Dns.Resolve(userInput);  // 自動判斷
IPAddress targetIP = result.AddressList[0];

系列規劃

  1. 常用類別介紹 (本篇)
  2. TCP Socket 基礎通訊
  3. TcpListener/TcpClient 助手類別
  4. 訊息邊界處理
  5. 實體物件序列化傳輸
  6. 執行緒池優化

歡迎批評指正,共同進步!

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved