Итак, я связываю локальный IP-адрес для использования в запросе http.Это код, который я использую:
localAddr, err := net.ResolveIPAddr("ip6", laddr)
if err != nil {
log.Fatal(err)
}
localTCPAddr := net.TCPAddr{
IP: localAddr.IP,
}
client := &http.Client{
Transport: &http.Transport{
Proxy: http.ProxyFromEnvironment,
DialContext: (&net.Dialer{
LocalAddr: &localTCPAddr,
Timeout: 30 * time.Second,
KeepAlive: 30 * time.Second,
DualStack: true,
}).DialContext,
MaxIdleConns: 100,
IdleConnTimeout: 90 * time.Second,
TLSHandshakeTimeout: 10 * time.Second,
ExpectContinueTimeout: 1 * time.Second,
},
}
Это приведет к панике из-за тайм-аута ввода / вывода.Я не уверен, почему это происходит, так как этот код работал вчера.Единственная причина, по которой я могу думать, это то, что я добавил несколько тысяч IP-адресов к сетевому интерфейсу, может ли это быть причиной тайм-аута, и кто-нибудь знает какие-либо решения?
РЕДАКТИРОВАТЬ:
Сообщение об ошибке:
Get https://myip.addr.space: dial tcp [myip]:0->[2607:5300:203:118:1:0:3:8b50]:443: i/o timeout