diff --git a/salt_observer/management/commands/fetchgrains.py b/salt_observer/management/commands/fetchgrains.py
index b2feccc1b270c14d33d63bb3d132c6183934fdd8..65f79f0200ddd36a51a7534e3c7124bdc76af632 100644
--- a/salt_observer/management/commands/fetchgrains.py
+++ b/salt_observer/management/commands/fetchgrains.py
@@ -35,10 +35,14 @@ class Command(ApiCommand, BaseCommand):
 
     def _update_connections(self, interfaces, minion, touched):
         ''' Update networks and network interfaces '''
+
         for if_name, if_data in interfaces.items():
             if if_name in ['lo', 'lo0']:
                 continue
 
+            if not all([if_data['ipv4']['address'], if_data['ipv4']['netmask'], if_data['mac_address']]):
+                continue
+
             ipv4_network = str(netaddr.IPNetwork('{}/{}'.format(if_data['ipv4']['address'], if_data['ipv4']['netmask'])).network)
             network = self._update_network(ipv4_network, if_data['ipv4']['netmask'])
             touched['networks'].append(network)