Add a bit of jitter to the TTL of xtransport cached IP addresses

This commit is contained in:
Frank Denis 2025-03-26 23:00:30 +01:00
parent 5d2519e2c1
commit c030e346b5

View file

@ -36,6 +36,7 @@ const (
DefaultTimeout = 30 * time.Second
SystemResolverIPTTL = 12 * time.Hour
MinResolverIPTTL = 4 * time.Hour
ResolverIPTTLMaxJitter = 15 * time.Minute
ExpiredCachedIPGraceTTL = 15 * time.Minute
)
@ -111,6 +112,7 @@ func (xTransport *XTransport) saveCachedIP(host string, ip net.IP, ttl time.Dura
if ttl < MinResolverIPTTL {
ttl = MinResolverIPTTL
}
ttl += time.Duration(rand.Int63n(int64(ResolverIPTTLMaxJitter)))
expiration := time.Now().Add(ttl)
item.expiration = &expiration
}