diff --git a/transporthandler.cpp b/transporthandler.cpp
index d0768ac..8795c1a 100644
--- a/transporthandler.cpp
+++ b/transporthandler.cpp
@@ -428,7 +428,12 @@
     // channel number is the lower nibble
     int channel = reqptr->channel & CHANNEL_MASK;
     auto ethdevice = ipmi::getChannelName(channel);
-    if (ethdevice.empty())
+    ipmi::ChannelInfo chInfo;
+    ipmi::getChannelInfo(channel, chInfo);
+
+    if (ethdevice.empty() ||
+        chInfo.mediumType !=
+            static_cast<uint8_t>(ipmi::EChannelMediumType::lan8032))
     {
         return IPMI_CC_INVALID_FIELD_REQUEST;
     }
@@ -556,6 +561,13 @@
     get_lan_t* reqptr = (get_lan_t*)request;
     // channel number is the lower nibble
     int channel = reqptr->rev_channel & CHANNEL_MASK;
+    ipmi::ChannelInfo chInfo;
+    ipmi::getChannelInfo(channel, chInfo);
+    if (chInfo.mediumType !=
+        static_cast<uint8_t>(ipmi::EChannelMediumType::lan8032))
+    {
+        return IPMI_CC_INVALID_FIELD_REQUEST;
+    }
 
     if (reqptr->rev_channel & 0x80) // Revision is bit 7
     {
