Energy efficiency is one of the most critical issues in wireless sensor networks, because sensor nodes are usually powered by batteries and their energy is extremely limited. To reduce the energy consumption, anchor-based geographic routing aims at finding a small number of intermediate nodes acting as anchors so that the path length (i.e., number of hops) between the source and destination can be reduced. However, some nodes (e.g., nodes near the boundary of the network) tend to be used as anchors repeatedly by multiple flows. As a result, their energy drains quickly and the lifetime of the network is reduced. Moreover, the intermediate nodes between source and destination change very little once the anchor list is set. This also contributes to the quick depletion of the energy for some nodes. In this paper, we propose to introduce a random shift to the location of anchors. Doing so, more nodes in the network are likely to become anchors and the energy consumption for packet routing can be better distributed among nodes in the network. We show analytically that our strategy improves the network lifetime. Simulation results show that this energy-aware strategy is effective in increasing the number of packets delivered in the lifetime of sensor networks.