diff --git a/derp/derphttp/derphttp_client.go b/derp/derphttp/derphttp_client.go index d5ec17b4f..c5d7c95b2 100644 --- a/derp/derphttp/derphttp_client.go +++ b/derp/derphttp/derphttp_client.go @@ -136,8 +136,15 @@ func NewRegionClient(privateKey key.NodePrivate, logf logger.Logf, netMon *netmo // NewNetcheckClient returns a Client that's only able to have its DialRegionTLS method called. // It's used by the netcheck package. -func NewNetcheckClient(logf logger.Logf) *Client { - return &Client{logf: logf, clock: tstime.StdClock{}} +func NewNetcheckClient(logf logger.Logf, netMon *netmon.Monitor) *Client { + if netMon == nil { + panic("nil netMon") + } + return &Client{ + logf: logf, + clock: tstime.StdClock{}, + netMon: netMon, + } } // NewClient returns a new DERP-over-HTTP client. It connects lazily. diff --git a/net/netcheck/netcheck.go b/net/netcheck/netcheck.go index efcc1a5de..a772851c0 100644 --- a/net/netcheck/netcheck.go +++ b/net/netcheck/netcheck.go @@ -1176,7 +1176,7 @@ func (c *Client) measureHTTPSLatency(ctx context.Context, reg *tailcfg.DERPRegio var ip netip.Addr - dc := derphttp.NewNetcheckClient(c.logf) + dc := derphttp.NewNetcheckClient(c.logf, c.NetMon) defer dc.Close() tlsConn, tcpConn, node, err := dc.DialRegionTLS(ctx, reg)