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 likeBasicDNSRelation
orPrefDNSRelation
. 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.