ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ ΡΠ΅Π»ΠΈΠ· Π°Π²ΡΠΎΡΠΈΡΠ΅ΡΠ½ΠΎΠ³ΠΎ (authoritative) DNS-ΡΠ΅ΡΠ²Π΅ΡΠ° PowerDNS Authoritative Server 4.7, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΡΠ΄Π°ΡΠΈ DNS-Π·ΠΎΠ½. ΠΠΎ Π΄Π°Π½Π½ΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ°, PowerDNS Authoritative Server ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 30% ΠΈΠ· ΠΎΠ±ΡΠ΅Π³ΠΎ ΡΠΈΡΠ»Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² Π² ΠΠ²ΡΠΎΠΏΠ΅ (Π΅ΡΠ»ΠΈ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠΌΠ΅Π½Ρ Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΌΠΈ DNSSEC, ΡΠΎ 90%). ΠΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ GPLv2.
PowerDNS Authoritative Server ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π΄ΠΎΠΌΠ΅Π½Π°Ρ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ , Π²ΠΊΠ»ΡΡΠ°Ρ MySQL, PostgreSQL, SQLite3, Oracle, ΠΈ Microsoft SQL Server, Π° ΡΠ°ΠΊΠΆΠ΅ Π² LDAP ΠΈ ΠΎΠ±ΡΡΠ½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΠ°ΠΉΠ»Π°Ρ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ BIND. ΠΡΠ΄Π°ΡΠ° ΠΎΡΠ²Π΅ΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΎΡΡΠ΅ΠΈΠ²Π°Π½ΠΈΡ ΡΠΏΠ°ΠΌΠ°) ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π° ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π½Π° ΡΠ·ΡΠΊΠ°Ρ Lua, Java, Perl, Python, Ruby, C ΠΈ C++. ΠΠ· ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ΄Π΅Π»ΡΡΡΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ±ΠΎΡΠ° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΠΎ SNMP ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· Web API (Π΄Π»Ρ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΡΡΡΠΎΠ΅Π½ http-ΡΠ΅ΡΠ²Π΅Ρ), ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π½Π° ΡΠ·ΡΠΊΠ΅ Lua, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Ρ ΡΡΡΡΠΎΠΌ Π³Π΅ΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²Π°:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π·ΠΎΠ½ («Catalog Zones»), ΡΠΏΡΠΎΡΠ°ΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ Π²ΡΠΎΡΠΈΡΠ½ΡΡ DNS-ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² Π·Π° ΡΡΡΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π° Π²ΡΠΎΡΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²ΡΠΎΡΠΈΡΠ½ΠΎΠΉ Π·ΠΎΠ½Ρ, ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΌ ΠΈ Π²ΡΠΎΡΠΈΡΠ½ΡΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ° ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π²ΡΠΎΡΠΈΡΠ½ΡΡ Π·ΠΎΠ½. ΠΠΎΡΠ»Π΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π·ΠΎΠ½, Π·Π°Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ Π½Π° ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π·ΠΎΠ½Ρ, ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π½ΡΠ΅ ΠΊΠ°ΠΊ Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³, Π±ΡΠ΄ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ Π½Π° Π²ΡΠΎΡΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠ°Π²ΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ° ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Ρ Π±ΡΠΊΠ΅Π½Π΄Π°ΠΌΠΈ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ gmysql, gpgsql, gsqlite3, godbc ΠΈ lmdb.
- Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π·ΠΎΠ½ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΡΠΈΡΠ»ΠΎΠΌ Π΄ΠΎΠΌΠ΅Π½ΠΎΠ². ΠΡΠΈ Ρ ΡΠ°Π½Π΅Π½ΠΈΠΈ Π·ΠΎΠ½ Π² Π‘Π£ΠΠ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΎ ΡΠΈΡΠ»ΠΎ SQL-Π·Π°ΠΏΡΠΎΡΠΎΠ² — Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Π³ΡΡΠΏΠΏΠΎΠ²Π°Ρ Π²ΡΠ±ΠΎΡΠΊΠ°. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΡΠ°Π·ΠΈΠ»ΠΎΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ², ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡΠΈΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π·ΠΎΠ½, Π΄Π°ΠΆΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π·ΠΎΠ½.
- ΠΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠ°Π½Π° ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° ΠΎΠ±ΠΌΠ΅Π½Π° ΠΊΠ»ΡΡΠ°ΠΌΠΈ GSS-TSIG, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π½Π΅Π΅ Π±ΡΠ» ΡΠ΄Π°Π»ΡΠ½ ΠΈΠ·-Π·Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡΡ.
- ΠΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ Lua-Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ TCP ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Lua, ΡΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠΈΠ»ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
- Π ΠΠ Π½Π° Π±Π°Π·Π΅ lmdbbackend ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ UUID ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ².
- Π pdnsutil ΠΈ HTTP API Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ autoprimary, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌΠΈ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π·ΠΎΠ½ Π½Π° Π²ΡΠΎΡΠΈΡΠ½ΡΡ DNS-ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ Π±Π΅Π· ΡΡΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π²ΡΠΎΡΠΈΡΠ½ΡΡ Π·ΠΎΠ½.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½ΠΎΠ²Π°Ρ Lua-ΡΡΠ½ΠΊΡΠΈΡ ifurlextup.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΈ Π΄ΠΎΡΡΠ°Π²ΠΊΠΈ ΠΊΠ»ΡΡΠ΅ΠΉ (key roller).
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru