Skip to content

Commit db6eb36

Browse files
authored
gh-124217, ipaddress: Add RFC 9637 reserved IPv6 block 3fff::/20 (#124240)
Signed-off-by: y5c4l3 <y5c4l3@proton.me>
1 parent 622368d commit db6eb36

File tree

3 files changed

+5
-0
lines changed

3 files changed

+5
-0
lines changed

Lib/ipaddress.py

+2
Original file line numberDiff line numberDiff line change
@@ -2375,6 +2375,8 @@ class _IPv6Constants:
23752375
IPv6Network('2001:db8::/32'),
23762376
# IANA says N/A, let's consider it not globally reachable to be safe
23772377
IPv6Network('2002::/16'),
2378+
# RFC 9637: https://www.rfc-editor.org/rfc/rfc9637.html#section-6-2.2
2379+
IPv6Network('3fff::/20'),
23782380
IPv6Network('fc00::/7'),
23792381
IPv6Network('fe80::/10'),
23802382
]

Lib/test/test_ipaddress.py

+2
Original file line numberDiff line numberDiff line change
@@ -2433,6 +2433,8 @@ def testReservedIpv6(self):
24332433
self.assertTrue(ipaddress.ip_address('2001:30::').is_global)
24342434
self.assertFalse(ipaddress.ip_address('2001:40::').is_global)
24352435
self.assertFalse(ipaddress.ip_address('2002::').is_global)
2436+
# gh-124217: conform with RFC 9637
2437+
self.assertFalse(ipaddress.ip_address('3fff::').is_global)
24362438

24372439
# some generic IETF reserved addresses
24382440
self.assertEqual(True, ipaddress.ip_address('100::').is_reserved)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Add RFC 9637 reserved IPv6 block ``3fff::/20`` in :mod:`ipaddress` module.

0 commit comments

Comments
 (0)