Safety applications developed for vehicular environments require every vehicle to periodically broadcast its status information (beacon) to all other vehicles, thereby avoiding the risk of car accidents in the road. Due to the high requirements on timing and reliability posed by traffic safety applications, the current IEEE 802.11p standard, which uses a random access Medium Access Control (MAC) protocol, faces difficulties to support timely and reliable data dissemination in vehicular environments where no acknowledgement or RTS/CTS (Request-to-Send/Clear-to-Send) mechanisms are adopted. In this paper, we propose the Dynamic Token-Based MAC (DTB-MAC) protocol. It implements a token passing approach on top of a random access MAC protocol to prevent channel contention as much as possible, thereby improving the reliability of safety message transmissions. Our proposed protocol selects one of the neighbouring nodes as the next transmitter; this selection accounts for the need to avoid beacon lifetime expiration. Therefore, it automatically offers retransmission opportunities to allow vehicles to successfully transmit their beacons before the next beacon is generated whenever time and bandwidth are available. Based on simulation experiments, we show that the DTB-MAC protocol can achieve better performance than IEEE 802.11p in terms of channel utilization and beacon delivery ratio for urban scenarios.