A Vehicular Ad hoc Network (VANET) is a type of wireless ad hoc network that facilitates ubiquitous connectivity between vehicles in the absence of fixed infrastructure. Multi-hop routing and beaconing approaches are two important research challenges in high mobility vehicular networks. Routing protocols are divided into two categories of topology-based and position-based routing protocols. In this article, we perform a comparative study among the existing routing solutions, which explores the main advantages and drawbacks behind their design. After implementing the representatives of geographical and topology routing protocols, we analyze the simulation results and discuss the strengths and weaknesses of these routing protocols in regard to their suitability to vehicular networks. Lastly, we discuss the open issues and research directions related to VANET routing protocols.