diff --git a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackRoutingArpHandler.java b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackRoutingArpHandler.java
index 2919072..0319d40 100644
--- a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackRoutingArpHandler.java
+++ b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackRoutingArpHandler.java
@@ -701,7 +701,7 @@
         public boolean isRelevant(OpenstackNodeEvent event) {
             // do not allow to proceed without leadership
             NodeId leader = leadershipService.getLeader(appId.name());
-            return Objects.equals(localNodeId, leader);
+            return Objects.equals(localNodeId, leader) && event.subject().type() == GATEWAY;
         }
 
         @Override
@@ -709,17 +709,13 @@
             OpenstackNode osNode = event.subject();
             switch (event.type()) {
                 case OPENSTACK_NODE_COMPLETE:
-                    if (osNode.type().equals(GATEWAY)) {
-                        setDefaultArpRule(osNode, true);
-                        setFloatingIpArpRuleForGateway(osNode, true);
-                    }
+                    setDefaultArpRule(osNode, true);
+                    setFloatingIpArpRuleForGateway(osNode, true);
 
                     break;
                 case OPENSTACK_NODE_INCOMPLETE:
-                    if (osNode.type().equals(GATEWAY)) {
-                        setDefaultArpRule(osNode, false);
-                        setFloatingIpArpRuleForGateway(osNode, false);
-                    }
+                    setDefaultArpRule(osNode, false);
+                    setFloatingIpArpRuleForGateway(osNode, false);
                     break;
                 default:
                     break;
