on_dns_cache_entry Event

Fires once for each cached DNS entry.

Syntax

class IPInfoDNSCacheEntryEventParams(object):
  @property
  def record_name() -> str: ...
  @property
  def record_type() -> int: ...
  @property
  def time_to_live() -> int: ...
  @property
  def data_length() -> int: ...
  @property
  def section() -> str: ...
  @property
  def record_value() -> str: ...
  @property
  def record_info() -> str: ...

# In class IPInfo:
@property
def on_dns_cache_entry() -> Callable[[IPInfoDNSCacheEntryEventParams], None]: ...
@on_dns_cache_entry.setter
def on_dns_cache_entry(event_hook: Callable[[IPInfoDNSCacheEntryEventParams], None]) -> None: ...

Remarks

This event fires once for each entry in the local DNS cache when display_dns_cache is called.

RecordName is the host name to which the record applies.

RecordType is the type of response. For instance 1 is an A record.

TimeToLive is the time in seconds after which the cached entry expires.

DataLength is the length of the data in bytes. For instance if the RecordType is A and an IPv4 address is cached DataLength would be 4. CNAME and PTR records will contain the length of the address in memory where the value is held.

Section is the section of the DNS response from which the record is taken. Most commonly this is the "Answer" section.

RecordValue is the actual value that is cached. For instance this may be an IP address for A records.

RecordInfo is a text representation of the other parameters. This is suitable for use in a log file, or to display.

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks 2020 Python Edition - Version 20.0 [Build 8307]