We shouldn't make it harder than necessary to support IPv6 in the future. And much like using regexes, it's best not to treat IPs as strings or perform our own deconstruction where possible. It's much safer and simpler to have the library give a 32/64bit integer (which is all IP addresses are) and just compare whether one is bigger than the other.