In Wireless ad hoc networks, multi-path routing cannot only improve the reliability of route, but also enhance the throughput and load-balancing of networks. However, due to the existence of unavoidable connectivity holes in randomly deployed networks, the number of found node-disjoint paths k of existing multi-path routing protocols still remains to be improved. In this paper, we propose an iterative multi-path routing protocol(IMPR). We first categorize nodes into three types by analyzing node local topology features and give formal definitions of node type and network connectivity hole. Then, we present an algorithm to recognize network connectivity holes by local flooding. Finally, we design an iterative multiple paths discovery algorithm, which with the help of recognized connectivity holes, iteratively builds alternate paths based on a path found by any known single-path routing protocol between a node pair. Simulation results show that in comparison with existing multi-path routing protocols, IMPR can find more node-disjoint paths between source-destination pairs.