functionalised IP parser