In mobile ad hoc networks, nodes are often modeled as having the same capabilities. However, there are many cases in which certain nodes host special services to other nodes in the network. Examples of such services are Internet access, DNS proxy or AAA servers. We refer to these special nodes as netmarks. Because there is a high likelihood that netmarks will communicate with the rest of the network, routes to netmarks are discovered and maintained proactively. By forming a virtual overlay between netmarks, we can provide location and routing services as well as Internet access for the common nodes. This hybrid routing approach is called netmark overlay routing protocol, NOR