diff --git a/protocol/tailscale/endpoint.go b/protocol/tailscale/endpoint.go index dc183b64..5ec89fee 100644 --- a/protocol/tailscale/endpoint.go +++ b/protocol/tailscale/endpoint.go @@ -38,6 +38,7 @@ import ( "github.com/sagernet/sing/common/logger" M "github.com/sagernet/sing/common/metadata" N "github.com/sagernet/sing/common/network" + "github.com/sagernet/sing/common/ntp" "github.com/sagernet/sing/service" "github.com/sagernet/sing/service/filemanager" "github.com/sagernet/tailscale/ipn" @@ -158,6 +159,7 @@ func NewEndpoint(ctx context.Context, router adapter.Router, logger log.ContextL }, TLSClientConfig: &tls.Config{ RootCAs: adapter.RootPoolFromContext(ctx), + Time: ntp.TimeFuncFromContext(ctx), }, }, }, diff --git a/service/derp/service.go b/service/derp/service.go index 861bb235..959cfa67 100644 --- a/service/derp/service.go +++ b/service/derp/service.go @@ -3,6 +3,7 @@ package derp import ( "bufio" "context" + stdTLS "crypto/tls" "encoding/json" "fmt" "io" @@ -31,6 +32,7 @@ import ( "github.com/sagernet/sing/common/logger" M "github.com/sagernet/sing/common/metadata" N "github.com/sagernet/sing/common/network" + "github.com/sagernet/sing/common/ntp" aTLS "github.com/sagernet/sing/common/tls" "github.com/sagernet/sing/service" "github.com/sagernet/sing/service/filemanager" @@ -159,6 +161,10 @@ func (d *Service) Start(stage adapter.StartStage) error { httpClients = append(httpClients, &http.Client{ Transport: &http.Transport{ ForceAttemptHTTP2: true, + TLSClientConfig: &stdTLS.Config{ + RootCAs: adapter.RootPoolFromContext(d.ctx), + Time: ntp.TimeFuncFromContext(d.ctx), + }, DialContext: func(ctx context.Context, network, addr string) (net.Conn, error) { return verifyDialer.DialContext(ctx, network, M.ParseSocksaddr(addr)) },