diff --git a/utils/misc/src/main/java/org/onlab/packet/IGMP.java b/utils/misc/src/main/java/org/onlab/packet/IGMP.java
index ef14fd6..04308db 100644
--- a/utils/misc/src/main/java/org/onlab/packet/IGMP.java
+++ b/utils/misc/src/main/java/org/onlab/packet/IGMP.java
@@ -223,13 +223,19 @@
         return (data, offset, length) -> {
             checkInput(data, offset, length, IGMPv2.HEADER_LENGTH);
 
-            // we will assume that this is IGMPv2 if the length is 8
-            boolean isV2 = length == IGMPv2.HEADER_LENGTH;
+            final ByteBuffer bb = ByteBuffer.wrap(data, offset, length);
+            byte igmpType = bb.get();
+            boolean isV2;
+            if (igmpType == TYPE_IGMPV2_MEMBERSHIP_REPORT  || igmpType == TYPE_IGMPV2_LEAVE_GROUP ||
+                    length == IGMPv2.HEADER_LENGTH) {
+                isV2 = true;
+            } else {
+                isV2 = false;
+            }
 
             IGMP igmp = isV2 ? new IGMPv2() : new IGMPv3();
 
-            final ByteBuffer bb = ByteBuffer.wrap(data, offset, length);
-            igmp.igmpType = bb.get();
+            igmp.igmpType = igmpType;
             igmp.resField = bb.get();
             igmp.checksum = bb.getShort();
 
