目录
Socket 编程
Socket 编程的流程:
- 建立 Socket
- 绑定 Socket
- 监听 Socket
- 接受连接请求
- 接收数据
Golang bulid-in 的 net 库对此流程进行了抽象和封装。无论我们期望使用什么协议建立什么形式的连接,都只需要调用 net.Dial() 即可。
net.Dial() 支持的协议类型:
- tcp
- tcp4
- tcp6
- udp
- udp4
- udp6
- ip
- ip4
- ip6
示例:
// TCP
conn, err := net.Dial("tcp", "192.168.0.10:2100")
// UDP
conn, err := net.Dial("udp", "192.168.0.12:975")
// ICMP
conn, err := net.Dial("ip4:icmp", "www.baidu.com")
// or
conn, err := net.Dial("ip4:1", "10.0.0.3")