It'll only actually block if the input is not a syntactically valid IP, which shouldn't happen (aside from /netmasks), but I agree it's not ideal.  netty doesn't seem to provide anything better, and I don't see any simple inet_aton-like function in java.net.  I'm hesitant to write a new IP parser, but I'm happy to do whatever you think is best.  It might even make sense to create a new class for this to support cidrs as well.