During the last decade, tremendous progress has been reported in providing network to mobile users. Mobile Ad hoc Network (MANET) is one of the networks that do not require any administrator involvement during the communication. MANET can be deployed in the places, where it is not feasible to install an infrastructure, such as in military area. Vehicular Ad hoc Network (VANET) is an emerging sub-class of MANET. VANET is deployed on the road, where vehicles constitute mobile nodes. Active security and intelligent transportation are important applications of VANET, which need suitable vehicle-to-vehicle communication technology, especially routing technology. Routing protocol needs to design, to address challenges of VANET such as, high mobility of nodes, random topology, and heterogeneous networks. Mobility models reflect the movement pattern of nodes on the road. The mobility models are used during the simulation/implementation of protocols. They should generate movement pattern in such way that, the generated pattern should reflects real world behavior of vehicles on the roads. This paper provides a detailed survey of routing protocols and mobility models in VANET.