Regular Expression for IPv6 addresses

Mark Andrews marka at isc.org
Fri Feb 5 01:02:11 UTC 2010


In message <4B6B66FF.50108 at spaghetti.zurich.ibm.com>, Jeroen Massar writes:
> Richard E. Brown wrote:
> > Folks,
> >=20
> > My company, Dartware, have derived a regex for testing whether an IPv6
> > address is correct. I've posted it in my blog:
> >=20
> >     http://intermapper.ning.com/profiles/blogs/a-regular-expression-for=
> -ipv6
> >=20
> >=20
> > This has links to the regular expression, a (Perl) program that tests
> > various correct and malformed addresses, and a Ruby implementation of
> > the same.
> 
> You know, link local addresses (fe80::/10) are quite useless without
> specifying the zone of that address. See section 11 of RFC4007.
> 
> The only proper way of "testing" if an address is a valid IPv6 address
> is to feed it to getaddrinfo() and then use it through that API.
> Yes, you can make some assumptions, but it has shown that people
> assuming that everything stayed under 2001::/16 also got it wrong at one
> point in time. Thus just feed it to getaddrinfo() if you really need it.
> 
> Greets,
>  Jeroen

And now for the trick question.  Is ::ffff:077.077.077.077 a legal
mapped address and if it, does it match 077.077.077.077?

Mark
-- 
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742                 INTERNET: marka at isc.org




More information about the NANOG mailing list