In this paper, we present the challenges in supporting VoIP services over multi-hop wireless networks using commercial IEEE 802.11 MAC DCF hardware, and propose a novel software solution, called Layer 2.5 SoftMAC. Our proposed SoftMAC resides between the 802.11 MAC layer and IP layer to coordinate the real-time and best-effort packet transmission among neighboring nodes in a multi-hop wireless network. To effectively support VoIP services, our SoftMAC architecture employs three key mechanisms: 1) distributed admission control for regulating the load of real time-traffic, 2) rate control for minimizing the impact of best-effort traffic on real-time traffic, and 3) non-preemptive priority queueing for providing high priority service to VoIP traffic. To evaluate the efficacy of these mechanisms, we conduct extensive simulations using the network simulator NS2. We also implement our proposed SoftMAC as a Windows Network Driver Interface Specification (NDIS) driver over Network Interface Card (NIC) driver, and build a multi-hop wireless network testbed with 32 wireless nodes equipped with 802.11 a/b/g combo cards. Our evaluation and testing results demonstrate the effectiveness of our proposed software solution.