HTTP 요청에 기본 IP 주소를 사용하지 않으려는 상황에서 Go는 소스 주소를 지정하는 방법을 제공합니다.
이를 달성하려면 클라이언트의 전송 내에 사용자 정의 다이얼러를 생성할 수 있습니다. 이는 다음과 같이 수행됩니다.
// Create a transport based on http.DefaultTransport, but with a custom localAddr transport := &http.Transport{ Proxy: http.ProxyFromEnvironment, DialContext: (&net.Dialer{ Timeout: 30 * time.Second, KeepAlive: 30 * time.Second, LocalAddr: localAddr, // Set the desired local IP address here DualStack: true, }).DialContext, MaxIdleConns: 100, IdleConnTimeout: 90 * time.Second, TLSHandshakeTimeout: 10 * time.Second, ExpectContinueTimeout: 1 * time.Second, } // Create an HTTP client using the custom transport client := &http.Client{ Transport: transport, }
다이얼러의 LocalAddr 필드를 설정하면 클라이언트의 HTTP 요청에 사용할 소스 IP 주소를 지정할 수 있습니다.
위 내용은 Go에서 HTTP 요청에 대한 소스 IP 주소를 사용자 정의하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!