add new dependency for validate ip address
fix some issues in ip validation
implement ip validation in preprocessor