docs: def _get_ids_from_ip(self, ip):  # pylint: disable=inconsistent-return-statements
          """Returns list of matching hardware IDs for a given ip address."""
          try:
              # Does it look like an ip address?
              socket.inet_aton(ip)
          except socket.error:
              return []
  
          # Find the server via ip address. First try public ip, then private
          results = self.list_hardware(public_ip=ip, mask="id")
          if results:
              return [result['id'] for result in results]
  
          results = self.list_hardware(private_ip=ip, mask="id")
          if results:
              return [result['id'] for result in results]