アンバウンド

ソース ホーム

CoreDNSによるメンテナンス

を有効にするには
unbound:github.com/coredns/unbound

unbound - libunboundを使用して再帰的なクエリを実行します。

説明

unboundを通じて再帰的なクエリを実行できます。Unboundは、解決レコードの検出(DNSKEY、RRSIG、NSEC、NSEC3)時にDNSSECをデフォルトで使用します。このunboundプラグインは、クライアントが要求していないレコードを削除します。Unboundの内部(RR)回答キャッシュは無効化されているので、cacheプラグインを使用することを検討できます。

Libunboundはオプション(オプションの一部)で設定できます。現在、デフォルトで以下が設定されています

  • msg-cache-size、0に設定
  • rrset-cache-size、0に設定

このプラグインはサーバーブロックごとに1回のみ使用できます。

構文

unbound [FROM]
  • FROMは、要求の解決と一致させるためのベースドメインです。指定していない場合、サーバーブロックからのゾーンが使用されます。

拡張構文を使用したさらに多くの機能

unbound [FROM] {
    except IGNORED_NAMES...
    option NAME VALUE
}
  • 上述のFROM
  • except内のIGNORED_NAMESは、解決から除外するドメインのスペースで区切られたリストです。
  • optionを使用すると、一部のアンバウンドオプション(unbound.conf(5)参照)を設定できます。複数回指定可能です。

メトリクス

モニタリングが有効になっている場合(prometheusディレクティブ経由で)、以下のメトリクスがエクスポートされます

  • coredns_unbound_request_duration_seconds{server} - クエリごとの期間。
  • coredns_unbound_response_rcode_count_total{server, rcode} - RCODEの数。

serverラベルは、要求を処理したサーバーを示します。詳細はmetricsプラグインを参照してください。

すべてのドメインのクエリを解決する

. {
    unbound
}

example.org内のすべてのクエリを解決する。

. {
    unbound example.org
}

または

example.org {
    unbound
}

example.org(またはそれ以下)に対するクエリを除くすべてを解決する

. {
    unbound {
        except example.org
    }
}

DNSクエリ名最小化オプションを設定して有効にする

. {
    unbound {
        option qname-minimisation yes
    }
}

バグ

unboundプラグインはCライブラリであるlibunbound(3)に依存するため、これをコンパイルするにはCとcgoに依存します。CoreDNSを完全に静的にコンパイルできません。コンパイルには、libunboundソースコード(Debianではlibunbound-dev)もインストールされている必要があります。

DNSSECの検証は(まだ)サポートされていません。トラストアンカーを設定するための(文書化された)方法もありません。

関連項目

Unboundとunbound.conf(5)に関する情報については、https://unbound.netを参照してください。libunboundの(cgo)goラッパーについては、https://github.com/miekg/unboundを参照してください。