Based on the analysis of the reliability and energyconsumption in WSNs, In this paper, we propose a cross layerbased MAC protocol abbreviated as CoDyMAC(Cross-layer and Dynamic balance energy-consumption MAC). CoDyMAC realizes multi-hop data transmission in a listen / sleep cycle by utilizing the interactions among MAC, Routing and Physical layers, and meanwhile introduces the selection mechanism of communication node and take the redundancy under control after weighing the energy-consumption and the reliability of data transmission. Thus it dynamically balances the energy consumption and prolongs the network life. Through the performance analysis and the simulation study, CoDyMAC shows its advantages such as shorter latency, lower energyconsumption, and high reliability to SMAC, ASMAC and ELMAC.