Technical Information
Infoblox NIOS to NetBox Object Mapping
This document provides a comprehensive mapping of Infoblox NIOS object types to their corresponding NetBox object types, based on the integration implementation.
Object Type Mapping Table
| Infoblox NIOS Object | NetBox Object Type | Key Fields Mapped | Mapping Details |
|---|---|---|---|
| Network View | Tag | name → tag name | |
comment → tag description | One tag per network view for filtering. All objects tagged with their network view using format infoblox-network-view:{name}. | ||
| Network (IPv4) | Prefix | network → prefix | |
comment → description | |||
networkview → tag | |||
vlans → infoblox_vlans custom field | |||
extattrs.Site → site | IPv4 networks. Status set to active. VLAN associations stored in custom field as JSON array. Site extracted from extensible attributes. | ||
| Network (IPv6) | Prefix | network → prefix | |
comment → description | |||
networkview → tag | |||
vlans → infoblox_vlans custom field | |||
extattrs.Site → site | IPv6 networks. Status set to active. VLAN associations stored in custom field as JSON array. Site extracted from extensible attributes. | ||
| Network Container | Prefix | network → prefix | |
comment → description | |||
networkview → tag | |||
extattrs.Site → site | Container networks. Status set to active. Tagged with network-container for identification. Hierarchical structure maintained. | ||
| IP Address (DHCP Lease) | IPAddress | address → address | |
client_hostname → dns_name | |||
networkview → tag | DHCP leases. Status set to dhcp. Client hostname populates dns_name field. | ||
| IP Address (Fixed Address) | IPAddress | ipv4addr or ipv6addr → address | |
name → dns_name | |||
comment → description | |||
match_client → custom field | |||
networkview → tag | Fixed addresses (DHCP reservations). Status set to dhcp (if match_client is set) or reserved. Hostname from fixed address name field populates dns_name. Match type and agent IDs stored in custom fields. | ||
| IP Address (Host Record) | IPAddress | ipv4addr → address | |
name (hostname) → dns_name | |||
networkview → tag | Host records (record:host_ipv4addr). Hostname from host record populates dns_name. Status set to active. Multiple IPs per host create separate IPAddress objects. Tagged with dhcp-configured if DHCP is enabled. | ||
| VLAN | VLAN | id → vid | |
name → name | |||
status → status | |||
comment, description, contact, department → description | VLANs from Infoblox NIOS. Status mapped from Infoblox status (ASSIGNED/UNASSIGNED → active, RESERVED → reserved). Multiple metadata fields combined in description. | ||
| VLAN View | VLAN Group | name → name | |
comment → description | |||
start_vlan_id, end_vlan_id → vid_ranges | |||
extattrs.Site → site | VLAN views mapped to VLAN groups for organizational structure. VLAN ID ranges constrain group membership. | ||
| DHCP Range (IPv4) | Prefix | start_addr, end_addr → prefix (calculated) | |
comment → description | |||
networkview → tag | IPv4 DHCP ranges. Status set to active. Tagged with dhcp-range and role:dhcp. CIDR prefix calculated from range using address summarization. | ||
| DHCP Range (IPv6) | Prefix | start_addr, end_addr → prefix (calculated) | |
comment → description | |||
networkview → tag | IPv6 DHCP ranges. Status set to active. Tagged with dhcp-range and role:dhcp. CIDR prefix calculated from range using address summarization. |
Field Mapping Details
Prefix Status Mapping
| Infoblox Object Type | NetBox Status | Notes |
|---|---|---|
| Network container | active | Tagged with network-container |
| Network (IPv4/IPv6) | active | Tagged with has_dhcp_ranges |
| DHCP range | active | Tagged with dhcp-range and role:dhcp |
IP Address Status Mapping
| Infoblox Object Type | NetBox Status | Condition |
|---|---|---|
| DHCP Lease | dhcp | Always |
| Fixed Address | dhcp | When match_client is MAC_ADDRESS, CLIENT_ID, CIRCUIT_ID, or REMOTE_ID |
| Fixed Address | reserved | When match_client is RESERVED, missing, or invalid |
| Host Record | active | Always |
VLAN Status Mapping
| Infoblox VLAN Status | NetBox Status |
|---|---|
| ASSIGNED | active |
| UNASSIGNED | active |
| RESERVED | reserved |
Network View to Tag Mapping
Network views in Infoblox are mapped to NetBox tags for filtering and organization:
| Network View | NetBox Tag |
|---|---|
| Any network view | infoblox-network-view:{view_name} |
All objects (prefixes, IP addresses) are tagged with their network view for easy filtering.
VLAN View to VLAN Group Mapping
VLAN views in Infoblox are separate from network views and map to VLAN groups in NetBox:
| VLAN View | NetBox VLAN Group |
|---|---|
| Any VLAN view | VLAN Group with name {view_name} VLANs and slug {view_name}-vlans |
Custom Fields
| Custom Field | Object Type | Purpose |
|---|---|---|
infoblox_match_client | IPAddress | DHCP client matching identifier |
infoblox_agent_circuit_id | IPAddress | DHCP relay agent circuit ID |
infoblox_agent_remote_id | IPAddress | DHCP relay agent remote ID |
infoblox_vlans | Prefix | JSON object containing VLAN associations from Infoblox |
Policy Configuration
Config Parameters
- BOOTSTRAP (optional): When true, only static entities (custom fields, tags) are created; no API calls. Default:
false. - INFOBLOX_HOST (required when not BOOTSTRAP): Infoblox NIOS Grid Master hostname or IP address.
- INFOBLOX_USER (required when not BOOTSTRAP): Infoblox NIOS username for authentication.
- INFOBLOX_PWD (required when not BOOTSTRAP): Infoblox NIOS password for authentication.
- INFOBLOX_VERSION (optional): WAPI version to use. Default:
2.11. - INFOBLOX_SSL_VERIFY (optional): Enable/disable SSL certificate verification. Default:
false.
Scope Parameters
-
network_views (optional): List of network view names to ingest.
- Default:
["*"](all network views) - Use
["*"]to ingest all network views - Specify individual views:
["default", "prod", "dev"] - Empty list
[]defaults to all network views - Invalid names cause validation error after fetching available views
- Default:
-
network_to_dns_view_mapping (optional): Custom mapping of network views to DNS views for host record queries.
- Format:
{"network_view_name": "dns_view_name"} - Default behavior if not specified:
defaultnetwork view →defaultDNS view- Other network views →
default.{network_view}DNS view
- Example:
{"prod": "prod-dns", "dev": "dev-dns"}
- Format:
Tags and Metadata
Global Tags
All created entities are automatically tagged with:
infoblox- Identifies objects from Infoblox NIOSdiscovered- Marks objects as auto-discoveredinfoblox-{hostname}- Unique tag per Infoblox host (not applied in bootstrap mode)
Object-Specific Tags
Prefixes:
infoblox-network-view:{view_name}- Network view membershipnetwork-container- Identifies network containershas_dhcp_ranges- Identifies networks with DHCP rangesdhcp-range- Identifies DHCP range prefixesrole:dhcp- Role tag for DHCP ranges
IP Addresses:
infoblox-network-view:{view_name}- Network view membershipdhcp-configured- Host records with DHCP enabled
VLANs:
infoblox-vlan-view:{view_name}- VLAN view membershipinfoblox-vlan-range:{range_name}- VLAN range membership (if in a range)infoblox-vlan-status:{status}- Original Infoblox status (ASSIGNED, UNASSIGNED, RESERVED)infoblox-vlan-reserved- Reserved flag is set
API and Behavior Notes
-
APIs used: Infoblox WAPI endpoints including:
network- IPv4 network objectsipv6network- IPv6 network objectsnetworkcontainer- Network containersfixedaddress- IPv4 DHCP fixed addressesipv6fixedaddress- IPv6 DHCP fixed addresseslease- DHCP leasesrecord:host_ipv4addr- Host recordsrange- IPv4 DHCP rangesipv6range- IPv6 DHCP rangesvlan- VLANsvlanview- VLAN viewsvlanrange- VLAN rangesnetworkview- Network views
-
Network view filtering: Objects are synchronized based on configured network views:
- By default, all network views are synchronized (
["*"]) - Explicit list restricts to specified views
- Invalid view names cause validation error
- Each network view is queried separately to ensure complete data collection
- By default, all network views are synchronized (
-
DNS view mapping: Host records are queried using DNS views:
- Network views are mapped to DNS views for
record:host_ipv4addrqueries - Default convention:
default→default, others →default.{network_view} - Custom mappings can be configured via
network_to_dns_view_mappingscope parameter
- Network views are mapped to DNS views for
-
DHCP synchronization:
- Fixed addresses (reservations) are created as IPAddress objects
- Status:
dhcp(if match_client is set) orreserved - Match type stored in
infoblox_match_clientcustom field - Agent circuit/remote IDs stored in custom fields when applicable
- Status:
- DHCP ranges are created as Prefix objects with
dhcp-rangeandrole:dhcptags - Range CIDR is calculated using address summarization
- Fixed addresses (reservations) are created as IPAddress objects
-
Hostname handling:
- The
dns_namefield on IPAddress objects is populated from:- Fixed address
namefield - Host record (record:host_ipv4addr) hostname
- DHCP lease
client_hostnamefield
- Fixed address
- This is metadata associated with DHCP/IPAM objects, not DNS zone data
- The
-
Network containers:
- Network containers maintain hierarchical structure in NetBox
- Status is set to
active(notcontainer) - Tagged with
network-containerfor identification - Child networks reference parent containers through prefix hierarchy
-
VLAN associations:
- Networks can be associated with VLANs in Infoblox
- VLAN associations are stored in the
infoblox_vlanscustom field as JSON - Format:
[{"id": 100, "name": "Data VLAN"}, ...]
-
Site extraction:
- Sites are extracted from Infoblox extensible attributes
- Attribute name:
Site - Applied to prefixes and VLAN groups