diff --git a/os_clients/ubuntu/supportedPaths.go b/os_clients/ubuntu/supportedPaths.go
index 34678822e46b420a42c467b3a60900fc0c0b57b9..6965a5a65c1a1a0022adc268b9da4d1b30991cf1 100644
--- a/os_clients/ubuntu/supportedPaths.go
+++ b/os_clients/ubuntu/supportedPaths.go
@@ -155,25 +155,30 @@ func generateSubinterface(subintf *gnmitargetygot.OpenconfigInterfaces_Interface
 	}
 
 	errs := make([]error, 0)
-	for _, addr := range subintf.Ipv4.Addresses.Address {
-		if !util.IsValueNil(addr.Config.Ip) && !util.IsValueNil(addr.Config.PrefixLength) {
-			netlinkAddr := &netlink.Addr{
-				IPNet: &net.IPNet{
-					IP:   net.ParseIP(*addr.Config.Ip),
-					Mask: net.CIDRMask(int(*addr.Config.PrefixLength), 32),
-				},
+	if ipv4s := subintf.GetIpv4(); ipv4s != nil {
+		if addresses := ipv4s.GetAddresses(); addresses != nil {
+			for _, addr := range subintf.Ipv4.Addresses.Address {
+				if !util.IsValueNil(addr.Config.Ip) && !util.IsValueNil(addr.Config.PrefixLength) {
+					netlinkAddr := &netlink.Addr{
+						IPNet: &net.IPNet{
+							IP:   net.ParseIP(*addr.Config.Ip),
+							Mask: net.CIDRMask(int(*addr.Config.PrefixLength), 32),
+						},
+					}
+					if err := netlink.AddrReplace(link, netlinkAddr); err != nil {
+						errs = append(errs, err)
+					}
+				}
 			}
-			if err := netlink.AddrReplace(link, netlinkAddr); err != nil {
-				errs = append(errs, err)
+			if len(errs) != 0 {
+				return fmt.Errorf("encountered %v errors during address adding \n%v", len(errs), errs)
 			}
+			return nil
 		}
 	}
 
-	if len(errs) != 0 {
-		return fmt.Errorf("encountered %v errors during address adding \n%v", len(errs), errs)
-	}
-
-	return nil
+	errs = append(errs, fmt.Errorf("no ipv4 addresses found"))
+	return fmt.Errorf("encountered %v errors during address adding \n%v", len(errs), errs)
 }
 
 func generateProtocol(protocol *gnmitargetygot.OpenconfigNetworkInstance_NetworkInstances_NetworkInstance_Protocols_Protocol) error {
diff --git a/os_clients/ubuntu/ubuntu.go b/os_clients/ubuntu/ubuntu.go
index e1091991cc8cae6365a1ea319054d077ee7562d1..d1bcee10fc4a3630530248108a48030c62262da9 100644
--- a/os_clients/ubuntu/ubuntu.go
+++ b/os_clients/ubuntu/ubuntu.go
@@ -46,6 +46,7 @@ func (ou *OsclientUbuntu) GetConfig() *gnmitargetygot.Gnmitarget {
 		log.WithFields(log.Fields{}).Error(err)
 	}
 	for _, localIface := range localIfaces {
+		log.Println("Creating Interface with name: ", localIface.Attrs().Name)
 		ou.createInterfaces(localIface, ou.gt)
 	}