In this paper, a dynamic address allocation protocol for mobile ad hoc networks (MANETs) has been proposed. The protocol is capable of assigning an address to the network nodes with low latency and communication overhead. It divides the network nodes into root leaders and normal nodes according to the functions they perform. Address space is distributed between leaders in disjoint address blocks. The leaders are responsible for assigning the addresses to unconfigured nodes. The leaked addresses, lost by the nodes that leaving the network abruptly, are reclaimed in an efficient way so as to preserve the addresses. Network partitioning and merging problem was solved in the protocol with low cost. The proposed protocol proves effective in terms of time delay and communication overhead. It is shown that the protocol is applicable for large networks with high number of nodes and large areas. The proposed scheme works well in the contention environment without significant changes in performance or effects on other applications by wasting the bandwidth, it also overcomes the presence of packet loss, mainly by increasing the control packet in the networks to keep the address allocation protocol operational.