0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【PowerDNS,BIND他】 DNSロードバランサーのDNSDistを触ってみる ~その2~

Last updated at Posted at 2023-12-16

前回からの流れ

DNSクエリのロードバランシングソフトウェアであるPowerDNS dnsdistを通した形での名前解決を確認しました。今回は、一般的なDNSサーバ環境に近い構成とした上でdnsdistのクエリ処理状況を確認するダッシュボードの設定と簡単なブロック動作を確認していきます。

実行環境、構成

  • OS:WSL2 Ubuntu 22.04
  • dnsdist:1.8.2-1
  • powerdns:4.5.3-1

dnsdist.png

前回実行環境からのdnsdist.conf変更点

WSL2上にコンテンツDNSサーバを配置したため、以下の通り変更しています。

変更前:newServer({address="172.26.0.1:53", name="dns1", qps=300})
変更後:newServer({address="172.26.2.3:15053", name="dns1", qps=300})

検証用コンテンツDNSサーバの設定

下記レコードを含むexample.comゾーンを用意

www          IN      A      192.168.5.1
srv          IN      A      192.168.5.2
*            IN      A      192.168.5.123

dnsdistのダッシュボード設定

dnsdistでのクエリルーティング動作状況を確認可とするため、ダッシュボード設定を追加します

  • dnsdist.confへダッシュボード用設定を追加します。
# vi /etc/dnsdist/dnsdist.conf

-- dnsdistのダッシュボード設定
-- https://dnsdist.org/guides/webserver.html
webserver("172.26.2.3:8083")
setWebserverConfig({password="supersecretpassword", apiKey="supersecretAPIkey", acl="172.26.0.0/16"})

※注意…検証のため、ダッシュボードのbindポート/パスワード/APIKEYをデフォルトとしています。
  • 設定反映のため、dnsdistをrestartします。
# systemctl restart dnsdist
  • ダッシュボードURLへアクセスすると、以下画面が表示されます。
    • ユーザ名:任意
    • パスワード: setWebserverConfigのpassword値
      image.png

特定DNSレコードのブロック用ルールを追加

検証用レコードであるsrv.exmaple.comの名前解決を行わないよう、dnsdistにて対象クエリをdropさせる単純なルールを追加します。

  • dnsdist.confへブロック用ルールを追加します。
# dig -p 10053 @172.26.2.3 srv.example.com +norec +short
192.168.5.2
# vi /etc/dnsdist/dnsdist.conf
-- 特定DNSクエリのブロック
-- https://dnsdist.org/rules-actions.html
addAction("srv.example.com.", DropAction())
  • 設定反映のため、dnsdistをrestartします。
  • digコマンドにて、正しくDNSクエリがブロックされる事を確認します。
# dig -p 10053 @172.26.2.3 srv.example.com +norec +short
;; communications error to 172.26.2.3#10053: timed out
;; communications error to 172.26.2.3#10053: timed out
;; communications error to 172.26.2.3#10053: timed out
  • また、追加したダッシュボード上からブロック状況を確認できます。
    image.png

おわりに

今回の記事では、dnsdistのダッシュボード設定の追加および特定レコードの簡単なブロック設定を追加しdnsdistの動作を確認しました。次回は、今回に引き続きクエリルーティングの設定とダイナミックルールに関する動作を確認していきます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?