Browse Source

Merge pull request #72 from darhwa/doh-h2

Enable ForceAttemptHTTP2 on DoH client
Kslr 5 years ago
parent
commit
45bf57826d
1 changed files with 3 additions and 1 deletions
  1. 3 1
      app/dns/dohdns.go

+ 3 - 1
app/dns/dohdns.go

@@ -58,6 +58,7 @@ func NewDoHNameServer(url *url.URL, dispatcher routing.Dispatcher, clientIP net.
 		MaxIdleConns:        30,
 		MaxIdleConns:        30,
 		IdleConnTimeout:     90 * time.Second,
 		IdleConnTimeout:     90 * time.Second,
 		TLSHandshakeTimeout: 30 * time.Second,
 		TLSHandshakeTimeout: 30 * time.Second,
+		ForceAttemptHTTP2:   true,
 		DialContext: func(ctx context.Context, network, addr string) (net.Conn, error) {
 		DialContext: func(ctx context.Context, network, addr string) (net.Conn, error) {
 			dest, err := net.ParseDestination(network + ":" + addr)
 			dest, err := net.ParseDestination(network + ":" + addr)
 			if err != nil {
 			if err != nil {
@@ -89,7 +90,8 @@ func NewDoHLocalNameServer(url *url.URL, clientIP net.IP) *DoHNameServer {
 	url.Scheme = "https"
 	url.Scheme = "https"
 	s := baseDOHNameServer(url, "DOHL", clientIP)
 	s := baseDOHNameServer(url, "DOHL", clientIP)
 	tr := &http.Transport{
 	tr := &http.Transport{
-		IdleConnTimeout: 90 * time.Second,
+		IdleConnTimeout:   90 * time.Second,
+		ForceAttemptHTTP2: true,
 		DialContext: func(ctx context.Context, network, addr string) (net.Conn, error) {
 		DialContext: func(ctx context.Context, network, addr string) (net.Conn, error) {
 			dest, err := net.ParseDestination(network + ":" + addr)
 			dest, err := net.ParseDestination(network + ":" + addr)
 			if err != nil {
 			if err != nil {