Ansible role for building DNS servers using Unbound
Find a file
2026-04-10 09:00:19 +02:00
defaults feat: set default record type to A 2025-07-14 17:43:03 +02:00
handlers fix: quotes 2025-10-25 15:07:27 +02:00
meta chore: rename meta/main.yml to meta/main.yaml 2026-02-16 10:44:28 +01:00
roles feat: use new ansible layout 2025-10-03 11:32:26 +02:00
tasks feat: add retries to apk 2025-12-01 09:32:43 +01:00
templates/unbound feat: dont generate ptr for transparant zones 2026-04-05 18:57:11 +02:00
.ansible-lint feat: initial commit 2025-07-14 14:19:39 +02:00
.gitignore feat: initial commit 2025-07-14 14:19:39 +02:00
.gitlab-ci.yml ci: move gitleaks to component 2026-01-19 17:17:01 +01:00
.markdownlint-cli2.jsonc feat: initial commit 2025-07-14 14:19:39 +02:00
.yamllint fix: remove extra ignore section from yamllint config 2026-02-10 08:51:14 +01:00
AGENTS.md chore: add AGENTS.md for opencode agents 2026-02-16 10:06:22 +01:00
playbook.yaml feat: implement new role layout 2025-11-01 13:26:10 +01:00
readme.md docs: standardize readme format 2026-04-10 09:00:19 +02:00
renovate.json feat: initial commit 2025-07-14 14:19:39 +02:00

Ansible Role: Unbound

Install and configure Unbound DNS server.

Variables

Variable Required Default Description
unbound_upstream_dns No ["8.8.8.8", "1.1.1.1"] Upstream DNS servers
unbound_allow_access Yes [] Networks allowed to query DNS
unbound_zones Yes [] DNS zones to configure

Example

unbound_upstream_dns:
  - "1.1.1.1"
  - "8.8.8.8"

unbound_allow_access:
  - name: "internal-lan"
    network: "10.0.0.0/8"
  - name: "dmz"
    network: "192.168.1.0/24"

unbound_zones:
  - zone: "internal.example.com"
    type: "static"
    records:
      - name: "server1.internal.example.com"
        value: "10.0.1.10"
      - name: "server2.internal.example.com"
        value: "10.0.1.11"