Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/grizzlyware/netbox-ripe-updater/llms.txt

Use this file to discover all available pages before exploring further.

Netbox RIPE Updater relies on four custom fields on NetBox objects and a webhook to trigger synchronisation. The updater also walks your region hierarchy to determine the country code written to each RIPE object. This page covers exactly what to create in your NetBox instance before the updater can process any prefixes.
1

Add the custom fields

Create the following four custom fields in NetBox under Customization → Custom Fields.
Assigns a RIPE Local Internet Registry to an aggregate. The updater uses this to look up the corresponding organisation object from lir_org.json.
FieldValue
Namelir
LabelLIR
Assigned modelsipam → aggregates
TypeSelection
RequiredYes
ChoicesAll LIR identifiers you are responsible for (e.g. de.examplelir1, nl.examplelir2)
DescriptionRIPE Local Internet Registry
Controls whether a prefix is synchronised to the RIPE database at all. Only prefixes with this field set to true are processed by the updater.
FieldValue
Nameripe_report
LabelRIPE Report
Assigned modelsipam → prefixes
TypeBoolean
RequiredNo
Defaultfalse
Descriptionshould this prefix be in RIPE-DB
Selects which named template from templates.json is used to generate the RIPE object for this prefix. The choices here must match the keys defined in your templates.json file.
FieldValue
Nameripe_template
LabelRIPE Template
Assigned modelsipam → prefixes
TypeSelection
RequiredNo
ChoicesAll template names you have defined in templates.json (e.g. CLOUD-POOL, INFRA-TRANSFER-NET)
DescriptionRIPE template to use
Overrides the netname attribute written to the RIPE object. When not set, the updater derives the netname from the template. Use this field when you need a specific, per-prefix netname that differs from the template default.
FieldValue
Nameripe_netname
LabelRIPE Netname
Assigned modelsipam → prefixes
TypeString
RequiredNo
DescriptionCustom NETNAME for RIPE object — overrides template name if set
2

Structure regions for country resolution

The updater determines which country code to write to the RIPE country attribute by inspecting the region hierarchy of the site the prefix is assigned to. It walks up the region tree until it finds a region whose slug is a valid ISO 3166-1 alpha-2 code.For example, if a prefix belongs to a site in the region Amsterdam, which has a parent region with the slug nl, the updater sets country: NL. The comparison is case-insensitive, so nl, NL, and Nl all match.To ensure correct resolution:
  • Create at least one region per country whose slug is the two-letter ISO country code (e.g. gb, de, nl).
  • Nest city or site-level regions beneath the country region.
  • If no matching region is found anywhere in the hierarchy, the updater falls back to DEFAULT_COUNTRY from .env.updater. If that is also unset, the update will fail.
3

Create the webhook

Add a webhook in NetBox under Operations → Webhooks so that the updater is notified whenever a prefix is created, updated, or deleted.
FieldValue
Nameripe-updater
EnabledYes
EventsCreate, Update, Delete
HTTP methodPOST
Payload URLhttp(s)://your-ripe-updater-host/update
HTTP content typeapplication/json
Assigned modelsipam | prefix
SSL verificationEnable if your updater has a valid TLS certificate
If you have set UPDATE_TOKEN in .env.updater, add the following additional header:
Authorisation: Token YOURTOKEN
Replace YOURTOKEN with the full value of your UPDATE_TOKEN variable, including the Token prefix if you have included it there.
The header name is Authorisation — British spelling with an s, not Authorization with a z. Using the wrong spelling will result in every webhook request being rejected with a 401 response.

Build docs developers (and LLMs) love