For network coding, each received packet is the combination of multiple independent packets. Thus, the decoding of the whole block of packets may fail even if only one combined packet is incorrectly received, which is referred to as the Error Propagation problem in this work. To solve this problem and make network coding more robust, we shall propose a distributed product code and a corresponding iterative decoding algorithm. By our scheme, the relays can simply forward its incorrectly received packets to the destination without retransmission, hence the transmission delay can be reduced. Simulation result will show that this product coding approach can improve the BER performance of network coding compared to the conventional link-by-link error correction.