I was able to confirm it generates valid integers for IPv6 bogon IP’s:
with bogon_ips as (
SELECT $1 as bogon_ip, $2 as bogon_ip_description FROM (VALUES
('::', 'Node-scope unicast unspecified address'),
('::1', 'Node-scope unicast loopback address'),
('::ffff:0:0', 'IPv4-mapped addresses'),
('::', 'IPv4-compatible addresses'),
('100::', 'Remotely triggered black hole addresses'),
('2001:10::', 'Overlay routable cryptographic hash identifiers (ORCHID)'),
('2001:db8::', 'Documentation prefix'),
('fc00::', 'Unique local addresses (ULA)'),
('fe80::', 'Link-local unicast'),
('fec0::', 'Site-local unicast (deprecated)'),
('ff00::', 'Multicast (Note: ff0e:/16 is global scope and may appear on the global internet.)'),
('2002::', '6to4 bogon (0.0.0.0/8)'),
('2002:a00::', '6to4 bogon (10.0.0.0/8)'),
('2002:7f00::', '6to4 bogon (127.0.0.0/8)'),
('2002:a9fe::', '6to4 bogon (169.254.0.0/16)'),
('2002:ac10::', '6to4 bogon (172.16.0.0/12)'),
('2002:c000::', '6to4 bogon (192.0.0.0/24)'),
('2002:c000:200::', '6to4 bogon (192.0.2.0/24)'),
('2002:c0a8::', '6to4 bogon (192.168.0.0/16)'),
('2002:c612::', '6to4 bogon (198.18.0.0/15)'),
('2002:c633:6400::', '6to4 bogon (198.51.100.0/24)'),
('2002:cb00:7100::', '6to4 bogon (203.0.113.0/24)'),
('2002:e000::', '6to4 bogon (224.0.0.0/4)'),
('2002:f000::', '6to4 bogon (240.0.0.0/4)'),
('2002:ffff:ffff::', '6to4 bogon (255.255.255.255/32)'),
('2001::', 'Teredo bogon (0.0.0.0/8)'),
('2001:0:a00::', 'Teredo bogon (10.0.0.0/8)'),
('2001:0:7f00::', 'Teredo bogon (127.0.0.0/8)'),
('2001:0:a9fe::', 'Teredo bogon (169.254.0.0/16)'),
('2001:0:ac10::', 'Teredo bogon (172.16.0.0/12)'),
('2001:0:c000::', 'Teredo bogon (192.0.0.0/24)'),
('2001:0:c000:200::', 'Teredo bogon (192.0.2.0/24)'),
('2001:0:c0a8::', 'Teredo bogon (192.168.0.0/16)'),
('2001:0:c612::', 'Teredo bogon (198.18.0.0/15)'),
('2001:0:c633:6400::', 'Teredo bogon (198.51.100.0/24)'),
('2001:0:cb00:7100::', 'Teredo bogon (203.0.113.0/24)'),
('2001:0:e000::', 'Teredo bogon (224.0.0.0/4)'),
('2001:0:f000::', 'Teredo bogon (240.0.0.0/4)'),
('2001:0:ffff:ffff::', 'Teredo bogon (255.255.255.255/32)')
)
)
select
bogon_ip,
bogon_ip_description,
bogon_ip as ip_input,
parse_ip(bogon_ip, 'inet', 1) as ip_input_parsed,
ip_input_parsed:family::tinyint as ip_input_family,
-- simulating udf
case ip_input_family
when 4
then parse_ip(concat(ip_input, '/16'), 'inet', 1):ipv4_range_start::varchar
when 6
then parse_ip(concat(ip_input, '/34'), 'inet', 1):hex_ipv6_range_start::varchar
else null
end as ip_input_join_key,
-- simulating udf
case ip_input_family
when 4
then parse_ip(concat(ip_input, '/16'), 'inet', 1):ipv4::int
when 6
then to_number(substr(parse_ip(concat(ip_input, '/34'), 'inet', 1):hex_ipv6::varchar(32), 9), repeat('X', 24))::int
else null
end as ip_input_numeric
from bogon_ips