From cd9f183fa836caba816ee73d486dda507a4e9c56 Mon Sep 17 00:00:00 2001 From: dyhkwong <50692134+dyhkwong@users.noreply.github.com> Date: Wed, 28 Jun 2023 14:28:23 +0800 Subject: [PATCH] DNS over QUIC should not have "http/1.1" and "h2" ALPNs (#2570) --- app/dns/nameserver_quic.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) --- a/app/dns/nameserver_quic.go +++ b/app/dns/nameserver_quic.go @@ -11,7 +11,6 @@ import ( "github.com/quic-go/quic-go" "golang.org/x/net/dns/dnsmessage" - "golang.org/x/net/http2" "github.com/v2fly/v2ray-core/v5/common" "github.com/v2fly/v2ray-core/v5/common/buf" @@ -25,7 +24,7 @@ import ( ) // NextProtoDQ - During connection establishment, DNS/QUIC support is indicated -// by selecting the ALPN token "dq" in the crypto handshake. +// by selecting the ALPN token "doq" in the crypto handshake. const NextProtoDQ = "doq" const handshakeIdleTimeout = time.Second * 8 @@ -383,7 +382,7 @@ func (s *QUICNameServer) openConnection( HandshakeIdleTimeout: handshakeIdleTimeout, } - conn, err := quic.DialAddrContext(ctx, s.destination.NetAddr(), tlsConfig.GetTLSConfig(tls.WithNextProto("http/1.1", http2.NextProtoTLS, NextProtoDQ)), quicConfig) + conn, err := quic.DialAddrContext(ctx, s.destination.NetAddr(), tlsConfig.GetTLSConfig(tls.WithNextProto(NextProtoDQ)), quicConfig) if err != nil { return nil, err }