Incident Library
Applied filters Root causeDependency failureComponentContainer registry and its credentialsClear allEvery case under the filters, with no sentence; newest first.
Suggested filters Search, and the values found in your words appear here.

Graph

  • Root cause
  • Component
  • Symptom
  • Contributing factor
  • Case

Cases1 case

1 to 1 of 1

  1. Symptoms

    From about 21:38 UTC on 5 February 2025, image pulls from Docker Hub over IPv6 failed with 429 Too Many Requests errors across several Linode regions. Both unauthenticated and authenticated pull requests were refused.

    Trigger

    Docker Hub's abuse prevention measures started rate-limiting image pulls coming from Linode's IPv6 address space.

    Root cause
    Component
    Contributing factor
    Detection

    The rate limiting began at about 21:38 UTC. The first status post, at 22:48 UTC, said Linode was aware of an issue with Docker Hub over IPv6 causing rate limiting and was investigating, and at 01:06 UTC on 6 February the status page said the issue had been identified as rate limiting of image pull requests to Docker Hub over IPv6.

    Remediation
    • changed the DNS resolvers to return an A record instead of an AAAA record so image pulls to Docker Hub used IPv4
    Action items
    • Find long-term solutions so that Docker Hub's abuse prevention measures do not affect Linode services
    Lessons

    A registry's abuse limit that groups IPv6 addresses by their first 64 bits can block a provider's whole address range at once, and authentication does not help. Answering DNS lookups with IPv4 addresses only was the quick way to move image pulls off the blocked range.

Check your cluster for this

This case involves Container registry and its credentials and VPC DNS resolver. kubegap audits a Kubernetes cluster for gaps like these, read-only, from Claude Code or Codex; its checks cite public reports like the ones in this library.

By root cause1