Go 語言中解析位址的關鍵函數包括:net.ParseIP():解析 IPv4 或 IPv6 位址。 net.ParseCIDR():解析 CIDR 標記。 net.ResolveIPAddr():解析主機名稱或 IP 位址為 IP 位址。 net.ResolveTCPAddr():解析主機名稱和連接埠為 TCP 位址。 net.ResolveUDPAddr():解析主機名稱和連接埠為 UDP 位址。
GoLang 常用函數位址解析指南
在 Go 語言中,解析位址是網路程式設計中的一個基本運算。本文將介紹 Go 語言中常用的函數來解析位址,並提供實際案例示範如何使用這些函數。
核心函數
ip := net.ParseIP("192.168.0.1")
cidr := net.ParseCIDR("192.168.0.0/24")
addr, err := net.ResolveIPAddr("ip", "google.com")
addr, err := net.ResolveTCPAddr("tcp", "google.com:80")
ResolveTCPAddr()
類似,但用於UDP 位址。用法:addr, err := net.ResolveUDPAddr("udp", "google.com:80")
實戰案例
案例1:解析IPv4 位址
package main import ( "fmt" "net" ) func main() { ip := net.ParseIP("192.168.0.1") fmt.Printf("IP: %v\n", ip) }
輸出:
IP: 192.168.0.1
案例2:解析CIDR 標記
#package main import ( "fmt" "net" ) func main() { cidr := net.ParseCIDR("192.168.0.0/24") fmt.Printf("CIDR: %v\n", cidr) }
輸出:
CIDR: 192.168.0.0/24
案例3:解析主機名稱
package main import ( "fmt" "net" ) func main() { addr, err := net.ResolveIPAddr("ip", "google.com") if err != nil { fmt.Printf("Error: %v\n", err) } else { fmt.Printf("IP: %v\n", addr.IP) } }
輸出:
IP: 172.217.2.142
以上是Golang 常用函數位址解析指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!