0
0

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】 バージョンアップしたらエラーで返答しなくなった

0
Last updated at Posted at 2025-03-26

サーバを CentOS 7 から Oracle Linux 9 に移行しているので、移行する PowerDNS やバックエンドの PostgreSQL も当然バージョンアップになります。

今回は、以下のようなバージョンアップになりました。

旧:

  • pdns-3.4.10-1.el7.x86_64
  • pdns-backend-postgresql-3.4.10-1.el7.x86_64
  • postgresql-server-9.2.15-1.el7_2.x86_64

新:

  • pdns-4.8.4-1.el9.x86_64
  • pdns-backend-postgresql-4.8.4-1.el9.x86_64
  • postgresql-server-13.20-1.el9_5.x86_64

DBのダンプ&リストアも順調にいって、pdnsも普通に起動したのですが、dns問い合わせをすると返答が正常に返ってきません。

/var/log/messages を見ると、以下のようなエラーが出てました。

Mar 19 14:52:12 XXXXXXXXX pdns_server[XXXXX]: Exception building answer packet for www.example.com/A (Parsing record content (try 'pdnsutil check-zone'): Data field in DNS should start with quote (") at position 0 of 'v=spf1 ip4:XXX.XXX.XXX.XXX -all') sending out servfail

旧バージョンでは SPF レコードの content はダブルクオーテーションで囲ってなかったのですが、新しいバージョンではそうする必要があるようです。

psql pdns から当該レコードのIDを求めて、

update records set content='"v=spf1 ip4:XXX.XXX.XXX.XXX -all"' where id=XX;

とすることで復旧しました。


そもそも、このDNSレコードは type が SPF (DNS record type 99) となっており、deprecatedなので、削除してしまっても良かったかもしれないです。ちなみに TXT で同一のレコードが存在してました。


以上

0
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?