]> git.ipfire.org Git - thirdparty/pdns.git/blob - docs/upgrading.rst
Merge pull request #6595 from Habbie/rec-4.1.x-boost-L
[thirdparty/pdns.git] / docs / upgrading.rst
1 Upgrade Notes
2 =============
3
4 Before proceeding, it is advised to check the release notes for your
5 PowerDNS version, as specified in the name of the distribution file.
6
7 Please upgrade to the PowerDNS Authoritative Server 4.0.0 from 3.4.2+.
8 See the `3.X <https://doc.powerdns.com/3/authoritative/upgrading/>`__
9 upgrade notes if your version is older than 3.4.2.
10
11 4.0.X to 4.1.0
12 --------------
13
14 - Recursion has been removed, see the :doc:`dedicated migration guide <guides/recursion>`.
15 - ALIAS record expension is disabled by default, use :ref:`setting-expand-alias` to enable.
16 - *Your LDAP schema might need to be updated*, because new record types
17 have been added (see below) and the ``dNSDomain2`` type has been
18 changed.
19 - The :doc:`LDAP Backend <backends/ldap>` now supports additional Record types
20
21 - NSEC3
22 - NSEC3PARAM
23 - TLSA
24 - CDS
25 - CDNSKEY
26 - OPENPGPKEY
27 - TKEY
28 - URI
29 - CAA
30
31 Changed options
32 ^^^^^^^^^^^^^^^
33
34 - ``experimental-lua-policy-script`` option and the feature itself have
35 been completely dropped. We invite you to use `PowerDNS
36 dnsdist <https://dnsdist.org>`_ instead.
37
38 - As recursion has been removed from the Authoritative Server, the
39 ``allow-recursion``, ``recursive-cache-ttl`` and ``recursor`` options have
40 been removed as well.
41
42 - ``default-ksk-algorithms`` has been renamed to :ref:`setting-default-ksk-algorithm`
43 and only supports a single algorithm name now.
44
45 - ``default-zsk-algorithms`` has been renamed to :ref:`setting-default-zsk-algorithm`
46 and only supports a single algorithm name now.
47
48 Changed defaults
49 ~~~~~~~~~~~~~~~~
50
51 - The default value of :ref:`setting-webserver-allow-from` has been changed from ``0.0.0.0, ::/0`` to ``127.0.0.1, ::1``.
52
53 Other changes
54 ^^^^^^^^^^^^^
55
56 The ``--with-pgsql``, ``--with-pgsql-libs``, ``--with-pgsql-includes``
57 and ``--with-pgsql-config`` ``configure`` options have been deprecated.
58 ``configure`` now attempts to find the Postgresql client libraries via
59 ``pkg-config``, falling back to detecting ``pg_config``. Use
60 ``--with-pg-config`` to specify a path to a non-default ``pg_config`` if
61 you have Postgresql installed in a non-default location.
62
63 The ``--enable-libsodium`` configure flag has changed from 'no' to 'auto'.
64 This means that if libsodium and its development header are installed, it will be linked in.
65
66 The improved :doc:`LDAP Backend <backends/ldap>` backend now requires Kerberos headers to be installed.
67 Specifically, it needs `krb5.h` to be installed.
68
69 4.0.X to 4.0.2
70 --------------
71
72 Changed options
73 ^^^^^^^^^^^^^^^
74
75 Changed defaults
76 ~~~~~~~~~~~~~~~~
77
78 - :ref:`setting-any-to-tcp` changed from ``no`` to ``yes``
79
80 3.4.X to 4.0.0
81 --------------
82
83 Database changes
84 ^^^^^^^^^^^^^^^^
85
86 No changes have been made to the database schema. However, several
87 superfluous queries have been dropped from the SQL backend. Furthermore,
88 the generic SQL backends switched to prepared statements. If you use a
89 non-standard SQL schema, please review the new defaults.
90
91 - ``insert-ent-query``, ``insert-empty-non-terminal-query``,
92 ``insert-ent-order-query`` have been replaced by one query named
93 ``insert-empty-non-terminal-order-query``
94 - ``insert-record-order-query`` has been dropped,
95 ``insert-record-query`` now sets the ordername (or NULL)
96 - ``insert-slave-query`` has been dropped, ``insert-zone-query`` now
97 sets the type of zone
98
99 Changed options
100 ^^^^^^^^^^^^^^^
101
102 Several options have been removed or renamed, for the full overview of
103 all options, see :doc:`settings`.
104
105 Renamed options
106 ~~~~~~~~~~~~~~~
107
108 The following options have been renamed:
109
110 - ``experimental-json-interface`` ==> :ref:`setting-api`
111 - ``experimental-api-readonly`` ==> :ref:`setting-api-readonly`
112 - ``experimental-api-key`` ==> :ref:`setting-api-key`
113 - ``experimental-dname-processing`` ==> :ref:`setting-dname-processing`
114 - ``experimental-dnsupdate`` ==> :ref:`setting-dnsupdate`
115 - ``allow-dns-update-from`` ==> :ref:`setting-allow-dnsupdate-from`
116 - ``forward-dnsupdates`` ==> :ref:`setting-forward-dnsupdate`
117
118 Changed defaults
119 ~~~~~~~~~~~~~~~~
120
121 - :ref:`setting-default-ksk-algorithms`
122 changed from rsasha256 to ecdsa256
123 - :ref:`setting-default-zsk-algorithms`
124 changed from rsasha256 to empty
125
126 Removed options
127 ~~~~~~~~~~~~~~~
128
129 The following options are removed:
130
131 - ``pipebackend-abi-version``, it now a setting per-pipe backend.
132 - ``strict-rfc-axfrs``
133 - ``send-root-referral``
134
135 API
136 ^^^
137
138 The API path has changed to ``/api/v1``.
139
140 Incompatible change: ``SOA-EDIT-API`` now follows ``SOA-EDIT-DNSUPDATE``
141 instead of ``SOA-EDIT`` (incl. the fact that it now has a default value
142 of ``DEFAULT``). You must update your existing ``SOA-EDIT-API`` metadata
143 (set ``SOA-EDIT`` to your previous ``SOA-EDIT-API`` value, and
144 ``SOA-EDIT-API`` to ``SOA-EDIT`` to keep the old behaviour).
145
146 Resource Record Changes
147 ^^^^^^^^^^^^^^^^^^^^^^^
148
149 Since PowerDNS 4.0.0 the CAA resource record (type 257) is supported.
150 Before PowerDNS 4.0.0 type 257 was used for a proprietary MBOXFW
151 resource record, which was removed from PowerDNS 4.0. Hence, if you used
152 CAA records with 3.4.x (stored in the DB with wrong type=MBOXFW but
153 worked fine) and upgrade to 4.0, PowerDNS will fail to parse this
154 records and will throw an exception on all queries for a label with
155 MBOXFW records. Thus, make sure to clean up the records in the DB.
156
157 In version 3.X, the PowerDNS Authoritative Server silently ignored records that
158 have a 'priority' field (like MX or SRV), but where one was not in the database.
159 In 4.X, :doc:`pdnsutil check-zone <manpages/pdnsutil.1>` will complain about this.