+ self._update_from_arp_scan()
+ self._update_from_arp()
+ if len(self.state) < config.config['arper_min_entries_to_be_valid']:
+ raise Exception(f'Arper didn\'t find enough entries; only got {len(self.state)}.')
+ if cached_supplimental_state is not None:
+ logger.debug('Also added %d supplimental entries.', len(cached_supplimental_state))
+ for mac, ip in cached_supplimental_state.items():
+ self.state[mac] = ip
+ for mac, ip in self.state.items():
+ logger.debug('%s <-> %s', mac, ip)
+
+ def _update_from_arp_scan(self):
+ """Internal method to initialize our state via a call to arp-scan."""