A method in a mobile ad hoc router that is within a mobile ad hoc network, the method including: receiving, by the mobile ad hoc router, a packet comprising a reply to a discovery message, the discovery message having been sent via an explicit hop-by-hop path between an originator of the discovery message and a target of the discovery message, the reply having been sent by the target; packet parsing, by the mobile ad hoc router, the routing header of each received packet to obtain routing information for reaching a specified destination address and that identifies an available route to a mobile ad hoc node within the mobile ad hoc network and that is reachable within a prescribed distance of the mobile ad hoc router; storing by the mobile ad hoc router a routing table entry in response to reception of the routing information and that specifies an explicit hop-by-hop path for reaching the mobile ad hoc node within the prescribed distance, the explicit hop-by-hop path including a network address of a next hop network node along the explicit hop-by-hop path for reaching the mobile ad hoc node; modifying, by the mobile ad hoc router, the routing header of the received packet into a modified routing header based on the routing information in the routing header, the modifying including: in response to the routing information in the routing header identifying that the received packet is from the explicit hop-by-hop path for reaching the mobile ad hoc node stored in the routing table entry, compressing a size of the routing header to form the modified routing header by removing the explicit hop-by-hop path for reaching the mobile ad hoc node from the routing header, or in response to the routing information in the routing header not specifying an explicit hop-by-hop path for reaching the destination address, expanding the routing header to form the modified routing header by inserting the explicit hop-by-hop path for reaching the mobile ad hoc node stored in the routing table entry into the routing header,; and outputting (62, 78) the received packet, having the modified routing header, toward the specified destination address. receiving, by the mobile ad hoc router, a packet comprising a reply to a discovery message, the discovery message having been sent via an explicit hop-by-hop path between an originator of the discovery message and a target of the discovery message, the reply having been sent by the target; packet parsing, by the mobile ad hoc router, the routing header of each received packet to obtain routing information for reaching a specified destination address and that identifies an available route to a mobile ad hoc node within the mobile ad hoc network and that is reachable within a prescribed distance of the mobile ad hoc router; storing by the mobile ad hoc router a routing table entry in response to reception of the routing information and that specifies an explicit hop-by-hop path for reaching the mobile ad hoc node within the prescribed distance, the explicit hop-by-hop path including a network address of a next hop network node along the explicit hop-by-hop path for reaching the mobile ad hoc node; modifying, by the mobile ad hoc router, the routing header of the received packet into a modified routing header based on the routing information in the routing header, the modifying including: in response to the routing information in the routing header identifying that the received packet is from the explicit hop-by-hop path for reaching the mobile ad hoc node stored in the routing table entry, compressing a size of the routing header to form the modified routing header by removing the explicit hop-by-hop path for reaching the mobile ad hoc node from the routing header, or in response to the routing information in the routing header not specifying an explicit hop-by-hop path for reaching the destination address, expanding the routing header to form the modified routing header by inserting the explicit hop-by-hop path for reaching the mobile ad hoc node stored in the routing table entry into the routing header,; and outputting (62, 78) the received packet, having the modified routing header, toward the specified destination address. in response to the routing information in the routing header identifying that the received packet is from the explicit hop-by-hop path for reaching the mobile ad hoc node stored in the routing table entry, compressing a size of the routing header to form the modified routing header by removing the explicit hop-by-hop path for reaching the mobile ad hoc node from the routing header, or in response to the routing information in the routing header not specifying an explicit hop-by-hop path for reaching the destination address, expanding the routing header to form the modified routing header by inserting the explicit hop-by-hop path for reaching the mobile ad hoc node stored in the routing table entry into the routing header,; and outputting (62, 78) the received packet, having the modified routing header, toward the specified destination address.