ipv6_flabel is 20bit. but `byte_size(val) == 20`, may should be `bit_size(val) == 20`. https://github.com/FlowForwarding/of_msg_lib/blob/master/src/of_msg_lib_v4.erl#L914 https://github.com/FlowForwarding/of_msg_lib/blob/master/src/of_msg_lib_v5.erl#L1036 I fixed as follows: https://github.com/shun159/of_msg_lib/blob/fix/ipv6_label_guard/src/of_msg_lib_v5.erl#L1036 https://github.com/shun159/of_msg_lib/blob/fix/ipv6_label_guard/src/of_msg_lib_v4.erl#L914 regards.