diff --git a/src/cmdu.c b/src/cmdu.c
index 007703397e4e337c74dead2f32b60a65cea9c2f6..b8f022ecc22caa526353b15f11c903d217f9d0ca 100644
--- a/src/cmdu.c
+++ b/src/cmdu.c
@@ -270,6 +270,10 @@ struct cmdu_buff *cmdu_alloc_simple(uint16_t type, uint16_t *mid)
 		*mid = cmdu_get_next_mid();
 
 	cmdu_set_mid(f, *mid);
+
+	if (cmdu_should_relay(type))
+		CMDU_SET_RELAY_MCAST(f->cdata);
+
 	CMDU_SET_LAST_FRAGMENT(f->cdata);
 
 	return f;