code: @Override
      public boolean containedBy(IValue ip) throws FilterException {
          return range.inRange(((ValueIPAddress) ip).getIP());
      }
docs: Is the IP address within the range (this). In some sense this is the opposite of the usual
  interpretation of the containedBy() function. However, it's the best I can think of. If, you
  think of the string comparisons as asking the question "does the input match the value" where the value
  has an implicit wildard at the beginning and end, then the interpretation here is essentially the same.
  Yes, this is strained, but it's the best I can think of for now.