diff --git a/apps/sdnip/src/main/java/org/onosproject/sdnip/IntentSynchronizer.java b/apps/sdnip/src/main/java/org/onosproject/sdnip/IntentSynchronizer.java
index c10df94..cc65ccc 100644
--- a/apps/sdnip/src/main/java/org/onosproject/sdnip/IntentSynchronizer.java
+++ b/apps/sdnip/src/main/java/org/onosproject/sdnip/IntentSynchronizer.java
@@ -17,7 +17,6 @@
 
 import com.google.common.util.concurrent.ThreadFactoryBuilder;
 import org.onlab.packet.Ethernet;
-import org.onlab.packet.Ip4Address;
 import org.onlab.packet.IpAddress;
 import org.onlab.packet.IpPrefix;
 import org.onlab.packet.MacAddress;
@@ -315,7 +314,7 @@
 
         // Match the destination IP prefix at the first hop
         TrafficSelector.Builder selector = DefaultTrafficSelector.builder();
-        if (prefix.version() == Ip4Address.VERSION) {
+        if (prefix.isIp4()) {
             selector.matchEthType(Ethernet.TYPE_IPV4);
             selector.matchIPDst(prefix);
         } else {
diff --git a/apps/sdnip/src/main/java/org/onosproject/sdnip/PeerConnectivityManager.java b/apps/sdnip/src/main/java/org/onosproject/sdnip/PeerConnectivityManager.java
index caca1cf..fd99c6a 100644
--- a/apps/sdnip/src/main/java/org/onosproject/sdnip/PeerConnectivityManager.java
+++ b/apps/sdnip/src/main/java/org/onosproject/sdnip/PeerConnectivityManager.java
@@ -18,7 +18,6 @@
 import org.onlab.packet.Ethernet;
 import org.onlab.packet.IPv4;
 import org.onlab.packet.IPv6;
-import org.onlab.packet.Ip4Address;
 import org.onlab.packet.IpAddress;
 import org.onlab.packet.IpPrefix;
 import org.onosproject.core.ApplicationId;
@@ -175,7 +174,7 @@
         byte tcpProtocol;
         byte icmpProtocol;
 
-        if (bgpdAddress.version() == Ip4Address.VERSION) {
+        if (bgpdAddress.isIp4()) {
             tcpProtocol = IPv4.PROTOCOL_TCP;
             icmpProtocol = IPv4.PROTOCOL_ICMP;
         } else {
@@ -261,7 +260,7 @@
                                           Short dstTcpPort) {
         TrafficSelector.Builder builder = null;
 
-        if (dstIp.version() == Ip4Address.VERSION) {
+        if (dstIp.isIp4()) {
             builder = DefaultTrafficSelector.builder()
                     .matchEthType(Ethernet.TYPE_IPV4)
                     .matchIPProtocol(ipProto)
