CoreDNS-011がリリースされました!
CoreDNSは、各プラグインがDNS機能を実装する、プラグインをチェーンするDNSサーバーです。
v011リリースはメジャーリリースであり、 *kubernetes* プラグインに後方互換性のない変更が含まれています。
コア
このリリースには、 *kubernetes* プラグインに対する後方互換性のない変更が含まれています。
github.com/miekg/dns
とgolang.org/x/net/context
のベンダーリングを停止しました。これにより、ベンダーされた型が一致しないために発生する問題を防ぎ、外部プラグインをコンパイルできるようになります。- Corefileでリバースゾーンを簡単に指定する方法を導入しました。(例)
10.0.0.0/24
をゾーン名として使用すると、CoreDNSはこれを0.0.10.in-addr.arpaに変換します。これは、ネットマスクが8の倍数であり、IPv4とIPv6の両方の場合にのみ実行されます。 - バグ修正と安定性の向上。
プラグイン
*kubernetes*、*file*、*secondary*、*hosts*、*erratic*、*metrics*で、Corefile内の不明なプロパティでエラーを発生させるようになりました。
新規
- *federation*: Kubernetes経由でのフェデレーションを有効にします。
- *autopath*: オートパッシングを有効にします。単独で使用できますが、主な用途はKubernetesです。
更新
- *log* にレスポンスのフラグを表示する
>rflags
置換子が追加され、デフォルトで有効になりました。 - *kubernetes*非推奨
cidr
: Corefileで逆構文を使用してくださいfederation
: 新しい*federation*プラグインを使用してくださいautopath
: 新しい*autopath*プラグインを使用してください
- kubernetes:
- レスポンスの最小TTLを設定できるTTLオプションを追加しました。
- 複数のk8s APIエンドポイントを
","
で区切って指定できるようになりました。(例)endpoint http://k8s-endpoint1:8080,http://k8s-endpoint2:8080
. CoreDNSは自動的にヘルスチェックを実行し、正常なk8s APIエンドポイントにプロキシします。
- rewrite:
- クライアントIPアドレスなどの動的プロパティを書き換えルールで使用できるようになりました。(例)
rewrite edns0 local set 0xffee {client_ip}
- EDNS0 Client Subnetのサポートを追加しました。
- クライアントIPアドレスなどの動的プロパティを書き換えルールで使用できるようになりました。(例)
- *dnstap* は *proxy* によってプロキシされたメッセージを報告するようになり、
tcp://
を指定することでリモートIPエンドポイントをサポートするようになりました。 - *dnssec* は、キーが構成されたゾーンの署名に使用できない場合に警告を表示するようになりました。
- *health* は、プラグインごとのヘルスステータスを許可するようになりました。ただし、現時点ではどのプラグインもこれを利用していません。
- *secondary* は、ゾーンを含むセカンダリ(
secondary example.org {...}
)を正しく解析するようになりました。
貢献者
このリリースの完成に貢献してくれた方々
Brad Beam, Chris O’Haver, insomniac, James Mills, John Belamaric, Markus Sommer, Miek Gieben, Mohammed Naser, Sandeep Rajan, Thong Huynh, varyoo, Yong Tang, 張勳。
手伝いたい場合は、課題のいずれかを確認してコーディングを開始してください!
ドキュメントとヘルプについては、コミュニティページをご覧ください。