The satellite network has the advantage of wide coverage, but it also faces problems such as frequent link interruption and limited energy. Traditional routing protocols can't be applied to satellite networks directly. To meet the challenges of routing in satellite networks, we proposed a geographic hierarchical routing protocol GHRP. A satellite network can be divided into many domains according to satellites' geographic locations or types. In our protocol, satellites are identified by their geographic information. The intra-domain routing uses the prediction table routing protocol and the inter-domain routing uses the on-demand routing protocol. Simulation results based on specific satellite constellation show that the GHRP protocol can achieve less routing convergence time, smaller end-to-end delay jitter and less routing overhead, compared with classical routing protocols OSPF and RIP.