Infoblox WAPI to DNS server configuration tool
Project description
Infoblox WAPI to Nameserver
This program creates nameserver configuration files for secondary name servers based on configuration fetched via Infoblox WAPI.
The following nameserver formats are supported:
Development of this software was sponsored by AddPro AB.
Installing
This program is available via PyPI and the latest version may be install using the following command:
pip install wapi2nsconf
Building
This package uses UV for packaging and dependency management. To build a wheel, use:
uv build
Templates
The following default configuration templates are provided:
- bind.conf
- knot.conf
- nsd.conf
- zones.yaml.j2
- zones.json.j2
Configuration
The configuration file is written in YAML. Example configuration can be found below.
WAPI Connection
wapi:
endpoint: https://infoblox.example.com/wapi/v2.5
version: 2.5 # optional (guessed from endpoint URL)
username: username
password: password
check_hostname: True # default True
verify: True # default True
ca_bundle: ca.pem # optional
IPAM Filters
The IPAM filters configures what view to use to find zones. Zones can also be filtered based on name server groups (ns_groups) and external attribute (key/value). There's a logic OR between ns_groups and extattr_key, so a zone is include if it is qualified by any of these options. If the extattr_value is configured, the extattr_key must have this value. If not specified, any value of extattr_key is accepted.
ipam:
view: default
ns_groups:
- "Group1"
- "Group2"
extattr_key: "foo"
extattr_value: "bar"
DNS Hidden Masters
masters:
- ip: 10.0.0.1
tsig: tsig.example.com
Configuration File Output
The output section defines what configuration files to output. Each output is created using a template, output file and an optionally set of variables (defined per template).
output:
- template: knot.conf
filename: knot.conf
variables:
master_base: infoblox
template_id: infoblox
storage: /var/lib/knot/zones
- template: nsd.conf
filename: nsd.conf
variables:
storage_prefix: ""
- template: bind.conf
filename: bind.conf
variables:
master: infoblox
storage_prefix: /var/named/infoblox/
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wapi2nsconf-0.5.0.tar.gz.
File metadata
- Download URL: wapi2nsconf-0.5.0.tar.gz
- Upload date:
- Size: 22.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e798765801da031c7d7b570d81ebafb2d1fc7191760feadb5008326afd3658b
|
|
| MD5 |
81d74c8a0d8e9cc9815bb6502ef2e59a
|
|
| BLAKE2b-256 |
d49b03fdfc815d516ff44d0f1e520ca2e15baca8b293f054f0fbc9f0aa87ecf9
|
Provenance
The following attestation bundles were made for wapi2nsconf-0.5.0.tar.gz:
Publisher:
release.yml on kirei/wapi2nsconf
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wapi2nsconf-0.5.0.tar.gz -
Subject digest:
9e798765801da031c7d7b570d81ebafb2d1fc7191760feadb5008326afd3658b - Sigstore transparency entry: 409470421
- Sigstore integration time:
-
Permalink:
kirei/wapi2nsconf@1b8888d3a3ff37732e704a3c73ab7e0980c15da5 -
Branch / Tag:
refs/tags/v0.5.0 - Owner: https://github.com/kirei
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@1b8888d3a3ff37732e704a3c73ab7e0980c15da5 -
Trigger Event:
release
-
Statement type:
File details
Details for the file wapi2nsconf-0.5.0-py3-none-any.whl.
File metadata
- Download URL: wapi2nsconf-0.5.0-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6c36cbe4c2719f37eafe3e21fe3ed3f3c99c413449c07bb90205cc0fe402dad9
|
|
| MD5 |
0ca03a6cbd48d4f966de977b4418eadf
|
|
| BLAKE2b-256 |
420c20e28040fc5af3444d690e6686b8b274d68ef97daa38b3947400479ccde6
|
Provenance
The following attestation bundles were made for wapi2nsconf-0.5.0-py3-none-any.whl:
Publisher:
release.yml on kirei/wapi2nsconf
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wapi2nsconf-0.5.0-py3-none-any.whl -
Subject digest:
6c36cbe4c2719f37eafe3e21fe3ed3f3c99c413449c07bb90205cc0fe402dad9 - Sigstore transparency entry: 409470425
- Sigstore integration time:
-
Permalink:
kirei/wapi2nsconf@1b8888d3a3ff37732e704a3c73ab7e0980c15da5 -
Branch / Tag:
refs/tags/v0.5.0 - Owner: https://github.com/kirei
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@1b8888d3a3ff37732e704a3c73ab7e0980c15da5 -
Trigger Event:
release
-
Statement type: