{
  "updated": "2026-08-05",
  "license": {
    "name": "CC BY 4.0",
    "url": "https://creativecommons.org/licenses/by/4.0/",
    "attribution": "Link to https://subnetkit.dev"
  },
  "sources": [
    "https://www.iana.org/assignments/iana-ipv4-special-registry/",
    "https://www.iana.org/assignments/iana-ipv6-special-registry/"
  ],
  "ipv4": {
    "count": 16,
    "blocks": [
      {
        "cidr": "255.255.255.255/32",
        "name": "Limited broadcast",
        "note": "The all-hosts broadcast address for the local link. Routers never forward it.",
        "rfc": "RFC 919",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc919.html",
        "globallyRoutable": false
      },
      {
        "cidr": "192.0.2.0/24",
        "name": "Documentation (TEST-NET-1)",
        "note": "Reserved for examples and documentation. Safe to print, never routed.",
        "rfc": "RFC 5737",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc5737.html",
        "globallyRoutable": false
      },
      {
        "cidr": "198.51.100.0/24",
        "name": "Documentation (TEST-NET-2)",
        "note": "The second documentation range, used when an example needs two distinct networks.",
        "rfc": "RFC 5737",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc5737.html",
        "globallyRoutable": false
      },
      {
        "cidr": "203.0.113.0/24",
        "name": "Documentation (TEST-NET-3)",
        "note": "The third documentation range, used when an example needs a third network.",
        "rfc": "RFC 5737",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc5737.html",
        "globallyRoutable": false
      },
      {
        "cidr": "192.88.99.0/24",
        "name": "6to4 relay anycast (deprecated)",
        "note": "The old 6to4 relay anycast prefix. Its use was deprecated in 2015.",
        "rfc": "RFC 7526",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc7526.html",
        "globallyRoutable": false
      },
      {
        "cidr": "192.0.0.0/24",
        "name": "IETF protocol assignments",
        "note": "Held by the IETF for protocol assignments such as DS-Lite and NAT64 discovery.",
        "rfc": "RFC 6890",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc6890.html",
        "globallyRoutable": false
      },
      {
        "cidr": "169.254.0.0/16",
        "name": "Link-local",
        "note": "Self-assigned when DHCP fails. Valid only on the local link, never routed.",
        "rfc": "RFC 3927",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc3927.html",
        "globallyRoutable": false
      },
      {
        "cidr": "192.168.0.0/16",
        "name": "Private-use",
        "note": "The private range home routers and small offices use by default.",
        "rfc": "RFC 1918",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc1918.html",
        "globallyRoutable": false
      },
      {
        "cidr": "198.18.0.0/15",
        "name": "Benchmarking",
        "note": "Reserved for network device benchmarking so test traffic cannot escape.",
        "rfc": "RFC 2544",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc2544.html",
        "globallyRoutable": false
      },
      {
        "cidr": "172.16.0.0/12",
        "name": "Private-use",
        "note": "The mid-sized private range, 172.16.0.0 through 172.31.255.255.",
        "rfc": "RFC 1918",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc1918.html",
        "globallyRoutable": false
      },
      {
        "cidr": "100.64.0.0/10",
        "name": "Shared address space (CGNAT)",
        "note": "Carrier-grade NAT space. It is not RFC 1918 private space, and it must not be used inside a customer network that a carrier also NATs.",
        "rfc": "RFC 6598",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc6598.html",
        "globallyRoutable": false
      },
      {
        "cidr": "224.0.0.0/4",
        "name": "Multicast",
        "note": "Group addressing. A multicast address identifies a set of receivers, never one interface.",
        "rfc": "RFC 5771",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc5771.html",
        "globallyRoutable": false
      },
      {
        "cidr": "240.0.0.0/4",
        "name": "Reserved for future use",
        "note": "Formerly class E. Still reserved, and many stacks refuse to assign it.",
        "rfc": "RFC 1112",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc1112.html",
        "globallyRoutable": false
      },
      {
        "cidr": "10.0.0.0/8",
        "name": "Private-use",
        "note": "The largest private range, 16,777,216 addresses. The usual choice for a big internal network.",
        "rfc": "RFC 1918",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc1918.html",
        "globallyRoutable": false
      },
      {
        "cidr": "127.0.0.0/8",
        "name": "Loopback",
        "note": "Traffic never leaves the host. The whole /8 loops back, not just 127.0.0.1.",
        "rfc": "RFC 1122",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc1122.html",
        "globallyRoutable": false
      },
      {
        "cidr": "0.0.0.0/8",
        "name": "This network",
        "note": "Means this host on this network. 0.0.0.0/0 as a route is a different thing: the default route.",
        "rfc": "RFC 1122",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc1122.html",
        "globallyRoutable": false
      }
    ]
  },
  "ipv6": {
    "count": 14,
    "blocks": [
      {
        "cidr": "::/128",
        "name": "Unspecified",
        "note": "The all-zeros address. A host uses it as a source while it still has no address.",
        "rfc": "RFC 4291",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc4291.html",
        "globallyRoutable": false
      },
      {
        "cidr": "::1/128",
        "name": "Loopback",
        "note": "The IPv6 loopback. Unlike IPv4 it is a single address, not a whole block.",
        "rfc": "RFC 4291",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc4291.html",
        "globallyRoutable": false
      },
      {
        "cidr": "64:ff9b::/96",
        "name": "IPv4-IPv6 translation (NAT64)",
        "note": "The well-known prefix a NAT64 gateway uses to embed an IPv4 address in IPv6.",
        "rfc": "RFC 6052",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc6052.html",
        "globallyRoutable": true
      },
      {
        "cidr": "::ffff:0:0/96",
        "name": "IPv4-mapped",
        "note": "How a dual-stack socket represents an IPv4 peer, for example ::ffff:192.0.2.1.",
        "rfc": "RFC 4291",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc4291.html",
        "globallyRoutable": false
      },
      {
        "cidr": "64:ff9b:1::/48",
        "name": "Local-use IPv4-IPv6 translation",
        "note": "For translation prefixes that stay inside one network rather than being global.",
        "rfc": "RFC 8215",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc8215.html",
        "globallyRoutable": false
      },
      {
        "cidr": "100::/64",
        "name": "Discard-only",
        "note": "A black hole prefix. Routing unwanted traffic here drops it cheaply.",
        "rfc": "RFC 6666",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc6666.html",
        "globallyRoutable": false
      },
      {
        "cidr": "2001:db8::/32",
        "name": "Documentation",
        "note": "Reserved for examples. This is the IPv6 counterpart of 192.0.2.0/24.",
        "rfc": "RFC 3849",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc3849.html",
        "globallyRoutable": false
      },
      {
        "cidr": "2001:20::/28",
        "name": "ORCHIDv2",
        "note": "Overlay routable cryptographic hash identifiers, used by HIP.",
        "rfc": "RFC 7343",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc7343.html",
        "globallyRoutable": false
      },
      {
        "cidr": "3fff::/20",
        "name": "Documentation",
        "note": "A second, larger documentation range added in 2024 for examples that need more room.",
        "rfc": "RFC 9637",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc9637.html",
        "globallyRoutable": false
      },
      {
        "cidr": "2001::/32",
        "name": "Teredo",
        "note": "Teredo tunnelling, which carried IPv6 over UDP through IPv4 NATs.",
        "rfc": "RFC 4380",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc4380.html",
        "globallyRoutable": true
      },
      {
        "cidr": "2002::/16",
        "name": "6to4",
        "note": "The 6to4 transition scheme. Its relay anycast prefix was deprecated in 2015.",
        "rfc": "RFC 3056",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc3056.html",
        "globallyRoutable": true
      },
      {
        "cidr": "fe80::/10",
        "name": "Link-local unicast",
        "note": "Every IPv6 interface has one. Valid only on its own link, so it usually needs a zone id.",
        "rfc": "RFC 4291",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc4291.html",
        "globallyRoutable": false
      },
      {
        "cidr": "ff00::/8",
        "name": "Multicast",
        "note": "IPv6 has no broadcast at all. Multicast groups do the work broadcast did in IPv4.",
        "rfc": "RFC 4291",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc4291.html",
        "globallyRoutable": false
      },
      {
        "cidr": "fc00::/7",
        "name": "Unique local",
        "note": "The IPv6 equivalent of private space, though the addresses are meant to be globally unique.",
        "rfc": "RFC 4193",
        "rfcUrl": "https://www.rfc-editor.org/rfc/rfc4193.html",
        "globallyRoutable": false
      }
    ]
  }
}
