May 26, 2018
Efficiently match IP addresses against IP ranges via regexp
NetIPMatchRegexp allows you to check an IP address against one or more IP ranges. It employs Perl’s highly optimized regular expression engine to do the hard work, so it is very fast. It is optimized for speed by doing the match against a regexp which implicitly checks the broadest IP ranges first. An advantage is that the regexp can be computed and stored in advance in source code, in a database table, etc and reused, saving much time if the IP ranges don’t change too often. The match can optionally report a value e.g. a network name instead of just a boolean, which makes module useful for mapping IP ranges to names or codes or anything else.