Malicious nodes in a mobile and wireless ad hoc network can be a threat to the security and/or anonymity of the exchanged data. While data encryption can protect the content exchanged between nodes, routing information may reveal the identities of communicating nodes and their relationships. This paper describes our effort to provide anonymous communication services in mobile and wireless ad hoc networks and proposes an anonymous routing protocol. Our protocol includes a mechanism to establish a trust among mobile nodes while avoiding untrustworthy nodes during the route discovery process. The major objective of our protocol is to allow only trustworthy intermediate nodes to participate in the routing protocol without jeopardizing the anonymity of the communicating nodes. We first present our scheme, and then report on its performance using an extensive set of simulation experiments using an ns-2 simulator. Compared to the non-secure DSR ad hoc routing protocol, our results indicate clearly that anonymity can be achieved in mobile ad hoc networks, and the additional overhead of our scheme is reasonably low.