Skip to content

IPNetRecord

The IPNetRecord asset type in the OWASP Open Asset Model (OAM) represents authoritative registration data for a block of IP addresses (IPv4 or IPv6), typically retrieved from a Regional Internet Registry (RIR) via the RDAP protocol. This record captures the ownership, administrative, and organizational context of a given CIDR allocation.

  • Definition: An IPNetRecord models a registered IP network block with accompanying metadata such as handle, range, status, country, and registration dates. It mirrors RDAP responses from RIRs like ARIN, RIPE, APNIC, AFRINIC, and LACNIC.

  • Purpose: By modeling IP allocations as assets, IPNetRecord entries allow external infrastructure to be tied back to real-world entities. This is essential for attribution, provider relationships, and BGP analysis. It enables analysts to query: “Who owns this IP range?”, “What organization controls this infrastructure?”, or “Which AS announces this block?”

  • Design Choice: The IPNetRecord structure preserves key fields from RDAP while ensuring they are queryable in graph form. CIDR blocks are expressed as typed network prefixes with explicit start and end addresses. Optional fields provide additional semantics for routing origin, delegation hierarchy, and jurisdictional scope.

The IPNetRecord asset enables infrastructure attribution, jurisdictional mapping, and inter-provider analysis within the OAM graph, anchoring raw IPs and services in a meaningful real-world context.

IPNetRecord Attributes

Attributes Type Required Description
cidr CIDR prefix The registered network range in CIDR notation (e.g., 192.0.2.0/24)
handle string RIR-assigned handle for the record
name string Name associated with the registration (e.g., organization or role)
type string Type of allocation (e.g., ALLOCATED, ASSIGNED)
start_address IP address First IP in the range
end_address IP address Last IP in the range
created_date string (ISO) Date the block was initially registered
updated_date string (ISO) Most recent modification date
status array of strings Optional flags such as active, allocated, legacy
whois_server string RIR WHOIS or RDAP server used to retrieve the data
method string Discovery method (e.g., RDAP, WHOIS)
country string (ISO) Country code associated with the allocation (e.g., US)
parent_handle string Handle of the parent allocation, if applicable
raw string Raw RDAP or WHOIS response preserved for auditing

IPNetRecord Properties

Property Type Property Name Description
SimpleProperty last_monitored Timestamp of the last time this record was updated or verified
SourceProperty Source Plugin Name Indicates which data source retrieved the registration

IPNetRecord Outgoing Relations

graph TD
iprec["IPNetRecord (192.0.2.0/24)"]
whois["FQDN"]
whoisRel@{ shape: braces, label: "whois_server" }
iprec --o whoisRel
whoisRel --> whois

contact["ContactRecord"]
contactrel@{ shape: braces, label: "registrant
admin_contact
abuse_contact
technical_contact" }
iprec --o contactrel
contactrel --> contact

url["URL"]
urlRel@{ shape: braces, label: "rdap_url" }
iprec --o urlRel
urlRel --> url

Relation Type Relation Label Target Assets Description
SimpleRelation whois_server FQDN Links the netblock registration information with the correct WHOIS server
SimpleRelation registrant ContactRecord Links the netblock registration information with registrant contact information
SimpleRelation admin_contact ContactRecord Links the netblock registration information with admin contact information
SimpleRelation abuse_contact ContactRecord Links the netblock registration information with contact information for abuse reporting
SimpleRelation technical_contact ContactRecord Links the netblock registration information with contact information of technical personnel
SimpleRelation rdap_url URL Links the netblock registration information to its associated web page

© 2025 Jeff Foley — Licensed under Apache 2.0.