范围:

  1. /proc/sys/net/ipv4/ip_local_port_range

分配时机:

  • bind
  • connect

临时端口号分配完了会发生什么

  • 报错: dial tcp4 127.0.0.1:22: connect: cannot assign requested address
package main

import (
    "fmt"
    "net"
    "time"
)

func main() {
    // 仅使用 ipv4
    _, err := net.Dial("tcp4", "localhost:22")
    if err != nil {
        fmt.Println(err)
    }
    time.Sleep(time.Minute * 10)
}