Skip to content

SRVDNSRelation

The SRVDNSRelation in the OWASP Open Asset Model (OAM) is used to represent DNS SRV (Service) records, which include detailed routing information for locating services such as SIP, XMPP, or LDAP.

  • Definition: An SRVDNSRelation captures the mapping from a DNS service name (e.g., _sip._tcp.example.com) to a target host or IP address, along with structured metadata including priority, weight, and port. These attributes are fundamental to how SRV records guide service resolution.

  • Purpose: This relation type is essential for modeling DNS-based service discovery mechanisms where clients need to select among multiple service endpoints based on priority and load-balancing rules. Including all SRV-specific attributes enables accurate representation of how services are discovered and accessed in real-world deployments.

  • Design Choice: SRVDNSRelation is a more detailed extension of DNS relation types like BasicDNSRelation or PrefDNSRelation. It includes:

  • priority: Defines the order in which targets should be attempted (lower is tried first).
  • weight: Used for load balancing among targets with the same priority.
  • port: Indicates the port on which the service is running.

This richer structure allows for nuanced modeling of service behaviors and routing policies that simpler DNS relations cannot capture.

In summary, SRVDNSRelation brings full support for SRV record semantics into the OAM, enabling accurate modeling of service-based resolution patterns that are critical in modern, distributed infrastructure.

SRVDNSRelation Attributes

Attributes Type Required Description
label string The label for the relation between two assets
header.rr_type number Specifies the type of resource within the DNS record
header.class number 1, IN class (Internet), is the most commonly used
header.ttl number Specifies how long a DNS record should be cached
priority number Captures the priority value for this record
weight number Captures the weight value for this record
port number Indicates the port on which the service is running

SRVDNSRelation Properties

Property Type Property Name Description
SourceProperty Source Plugin Name Indicates that the specified data source discovered this SRVDNSRelation

© 2025 Jeff Foley — Licensed under Apache 2.0.