diff --git a/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java b/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java
index c0bcfcfc14ef74df27d7c5ef1d79856eb07a3a64..fe713ac7f238f5e4bcffc9445c83dc629ab341d2 100755
--- a/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java
+++ b/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java
@@ -818,7 +818,7 @@ public class DeviceManagerImpl implements IDeviceManager, IOFMessageListener,
                 networkAddress = device.getNetworkAddress(nwSrc);
                 if (networkAddress != null) {
                     updateNetworkAddressLastSeen = true;
-                } else {
+                } else if (eth != null && (eth.getPayload() instanceof ARP)) {
                     networkAddress = new DeviceNetworkAddress(nwSrc, 
                                                                 currentDate);
                     newNetworkAddress = true;