ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ ΡΠ΅Π»ΠΈΠ· Π°Π²ΡΠΎΡΠΈΡΠ΅ΡΠ½ΠΎΠ³ΠΎ (authoritative) DNS-ΡΠ΅ΡΠ²Π΅ΡΠ° PowerDNS Authoritative Server 5.0, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΡΠ΄Π°ΡΠΈ DNS-Π·ΠΎΠ½. Π Π»ΡΡΡΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π° PowerDNS Authoritative Server ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π» Π΄ΠΎ 30% ΠΈΠ· ΠΎΠ±ΡΠ΅Π³ΠΎ ΡΠΈΡΠ»Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² Π² ΠΠ²ΡΠΎΠΏΠ΅ ΠΈ Π΄ΠΎ 90% Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² Ρ DNSSEC. ΠΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ GPLv2.
PowerDNS Authoritative Server ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π΄ΠΎΠΌΠ΅Π½Π°Ρ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ , Π²ΠΊΠ»ΡΡΠ°Ρ MySQL, PostgreSQL, SQLite3, LMDB, Oracle, ΠΈ Microsoft SQL Server, Π° ΡΠ°ΠΊΠΆΠ΅ Π² LDAP ΠΈ ΠΎΠ±ΡΡΠ½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΠ°ΠΉΠ»Π°Ρ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ BIND. ΠΡΠ΄Π°ΡΠ° ΠΎΡΠ²Π΅ΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΎΡΡΠ΅ΠΈΠ²Π°Π½ΠΈΡ ΡΠΏΠ°ΠΌΠ°) ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π° Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π½Π° ΡΠ·ΡΠΊΠ°Ρ Lua, Java, Perl, Python, Ruby, C ΠΈ C++. ΠΠ· ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ΄Π΅Π»ΡΡΡΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ±ΠΎΡΠ° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ, ΡΡΠ΅Π΄ΠΈ ΠΏΡΠΎΡΠ΅Π³ΠΎ ΠΏΠΎ SNMP ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· Web API (Π΄Π»Ρ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΡΡΡΠΎΠ΅Π½ http-ΡΠ΅ΡΠ²Π΅Ρ), ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π½Π° ΡΠ·ΡΠΊΠ΅ Lua, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Ρ ΡΡΡΡΠΎΠΌ Π³Π΅ΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
ΠΠ»ΡΡΠ΅Π²ΡΠΌ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²ΠΎΠΌ Π² PowerDNS Authoritative Server 5.0 ΡΡΠ°Π»Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ (views) Π² ΡΡΠΈΠ»Π΅ DNS-ΡΠ΅ΡΠ²Π΅ΡΠ° BIND, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΡ ΠΎΡΠ΄Π°Π²Π°ΡΡ ΡΠ°Π·Π½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ DNS-Π·ΠΎΠ½ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ IP-Π°Π΄ΡΠ΅ΡΠ°, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΡΠΏΠΈΠ» Π·Π°ΠΏΡΠΎΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Ρ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌΠΈ Π°Π΄ΡΠ΅ΡΠ°ΠΌΠΈ (ΠΈΠ½ΡΡΠ°Π½Π΅Ρ) ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ΄Π°Π²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ Π²Π°ΡΠΈΠ°Π½Ρ DNS-Π·ΠΎΠ½Ρ Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π°, Π° Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ β Π΄ΡΡΠ³ΠΎΠΉ. ΠΠ»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°Π·Π½ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ DNS-Π·ΠΎΠ½ ΠΏΠΎΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π±ΡΠΊΠ΅Π½Π΄ LMDB.
Π‘Π΅ΡΠ΄ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΊ Unix-ΡΠΎΠΊΠ΅ΡΡ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠΊΠ΅ΡΠ° TCP/IP.
- Π ΡΡΠΈΠ»ΠΈΡΡ sdig Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° EDNS Cookie.
- Π Π±ΡΠΊΠ΅Π½Π΄ LMDB Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠΈΡΠΊΠ° Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° RFC-2136 (DNS UPDATE).
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½ΠΎΠ²ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠΈΠ»ΠΈΡΡ pdnsutil β Β«pdnsutil ΡΠΈΠΏ_ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡΒ» (ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ°ΡΠΎΠ³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎΡ ΡΠ°Π½Π΅Π½Π°).
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½ΠΎΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«pdnsutil backend-lookupΒ» Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π² Π±ΡΠΊΠ΅Π½Π΄Π΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° RFC-9615 Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π±ΡΡΡΡΡΠ°ΠΏΠΏΠΈΠ½Π³Π° DNSSEC.
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²Π΅Π΄Π΅Π½ΠΈΡ Π»ΠΎΠ³Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΠ°ΡΡΠΈΠ½Π³Π°.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Β«dnsupdate-require-tsigΒ», Π²ΠΊΠ»ΡΡΠ°ΡΡΠ°Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° TSIG (Transaction Signature) Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π² DNS.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Β«direct-dnskey-signatureΒ», Π²ΠΊΠ»ΡΡΠ°ΡΡΠ°Ρ ΠΏΡΡΠΌΠΎΠ΅ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ DNSKEY ΠΈΠ· Π±ΡΠΊΠ΅Π½Π΄Π°.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Β«resolve-across-zonesΒ», ΠΏΡΠΈ Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ DNS-ΡΠ΅ΡΠ²Π΅Ρ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡ CNAME-Π·Π°ΠΏΠΈΡΠΈ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠ΅ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ Π·ΠΎΠ½Ρ.
- Π Π°ΡΡΠΈΡΠ΅Π½Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π½Π° ΡΠ·ΡΠΊΠ΅ Lua.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
