Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

MQTT5 publish packets not dissected correctly unless Connect command packet is captured

MQTT5 packets include properties right before the message. MQTT3 packets do not include properties. When capturing MQTT5 traffic, the properties are not dissected properly. An empty "properties" byte is displayed as a zero byte at the start of the message, resulting in a "Trailing stray characters" warning:

image description

Only when the Connect command packet is also captured, which includes the version number 5, are the properties displayed correctly:

image description image description

Is there any way to get Wireshark to display MQTT5 packets correctly even when the Connect command packet is not part of the capture? Is there a setting for "MQTT version"? I did not find anything like that.

MQTT5 publish packets not dissected correctly unless Connect command packet is captured

MQTT5 packets include properties right before the message. MQTT3 packets do not include properties. When capturing MQTT5 traffic, the properties are not dissected properly. An empty "properties" byte is displayed as a zero byte at the start of the message, resulting in a "Trailing stray characters" warning:

image description

Only when the Connect command packet is also captured, which includes the version number 5, are the properties displayed correctly:

image description

image description

Is there any way to get Wireshark to display MQTT5 packets correctly even when the Connect command packet is not part of the capture? Is there a setting for "MQTT version"? I did not find anything like that.

MQTT5 publish packets not dissected correctly unless Connect command packet is captured

MQTT5 packets include properties right before the message. MQTT3 packets do not include properties. See: https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901027

When capturing MQTT5 traffic, the properties are not dissected properly. An empty "properties" E.g., a "property length" byte of zero is displayed as a zero byte at the start of the message, resulting in a "Trailing stray characters" warning:

image description

Only when the Connect command packet is also captured, which includes the version number 5, are the properties displayed correctly:

image description

image description

Is there any way to get Wireshark to display MQTT5 packets correctly even when the Connect command packet is not part of the capture? Is there a setting for "MQTT version"? I did not find anything like that.