I noticed one issue with this great gem.
IPAddress.parse, when called with "fd00::10.3.0.10/120
" returns "::ffff:10.3.0.10" address. The code in ipaddress.rb determines that this should be treated as IPv6::Mapped
Unfortunately, the correct value should use the "fd00::" prefix and the IPv6 version of it should become "fd00::a03:0:a/120". That's the way the IPv6 is treated in iproute2, ip6tables and pretty much every IPv6 calculator I've seen.