In this paper, we propose an auction-based routing algorithm in a distributed cognitive radio network. The routing of packets is viewed as a market-based phenomenon where channels are traded between transmitters and receivers. Message routes are determined through a series of auctions between message senders and forwarders. The use of auction facilitates the determination of the cost of bandwidth in a market-like scenario, hence the price to be paid by the senders, for each of the possible routes. The process involves the forwarders (or, bidders) bidding the price and the sender choosing the winner with the minimum bid. While the proposed schema explores all routes from the source to the destination through a repeated bidding process, the route with the minimum payment is chosen as the optimal solution that satisfies the requirement of the sender. Bidders determine their bid based on three utility values: i) signal to interference and noise ratio on a specific channel, ii) achievable capacity on each channel, and iii) the required bandwidth to satisfy the buyer's bit rate requirement. We consider two cases: i) sellers can bid for only one channel; in this case the bid is for the channel which satisfies the bit rate requirement and has the minimum price and ii) sellers can bid for a combination of non-substitutable channels that collectively satisfy the bit rate requirement. Since exploring all possible combinations of channels is NR-hard, we propose a greedy heuristic that takes ( ). We validate the proposed auction based routing through extensive simulation experiments. Results are obtained for different topologies and for various number of channels and networking parameters.