mentat.services.pdnsr module

Implementation of internal PassiveDNS service connector.

exception mentat.services.pdnsr.PDNSRConfigException[source]

Bases: ValueError

exception mentat.services.pdnsr.PDNSRRuntimeException[source]

Bases: RuntimeError

class mentat.services.pdnsr.PDNSRService(base_url, base_api_url, api_key)[source]

Bases: object

Implementation of internal PassiveDNS access service.

get_api_url_lookup_hostname(hostname)[source]

Get API URL for looking up given hostname in PassiveDNS service.

get_api_url_lookup_ip(ipaddr)[source]

Get API URL for looking up given IP address in PassiveDNS service.

get_url_lookup_hostname(hostname)[source]

Get URL for looking up given hostname in PassiveDNS service.

get_url_lookup_ip(ipaddr)[source]

Get URL for looking up given IP address in PassiveDNS service.

lookup_ip_or_hostname(search, sortby=None, limit=None)[source]

Lookup given input as an IP address in PassiveDNS service. If it doesn’t find anything, it will try to find given input as a hostname. Returns the result and also type of the result (‘host’ or ‘ip’).

setup()[source]

Additional internal setup currently not necessary.

status()[source]

Display status of the service.

class mentat.services.pdnsr.PDNSRServiceManager(core_config, updates=None)[source]

Bases: object

Class representing a custom PDNSRServiceManager capable of understanding and parsing Mentat system core configurations and enabling easy way of unified bootstrapping of mentat.services.nerd.PDNSRService service.

service()[source]

Return handle to PassiveDNS service according to internal configurations.

Returns:

Reference to PassiveDNS service object.

Return type:

mentat.services.passivednsr.PDNSRService

mentat.services.pdnsr.init(core_config, updates=None)[source]

(Re-)Initialize PDNSRServiceManager instance at module level and store the refence within module.

mentat.services.pdnsr.manager()[source]

Obtain reference to NerdServiceManager instance stored at module level.

mentat.services.pdnsr.service()[source]

Obtain reference to NerdService instance from module level manager.