refacto using net.isIP