Centos7/RHEL7 üzərində Powerdns Master/Slave replikasiya qurulması və Poweradmin veb interfeys

Centos7/RHEL7 üzərində Powerdns Master/Slave replikasiya qurulması və Poweradmin veb interfeys

Powerdns demək olar ki, bütün UNİX-LİNUX distrubitivlərində işlək bir DNS serverdir. PowerDNS-i fərqləndirən ən mühim xüsusiyyətlərdən biri sadə BİND üsulu zona fayllarından tutmuş kompleks verilənlər bazasına qədər hamısının üzərdində qurula bilir.

Bu bələdçi vasitəsi ilə siz PowerDNS-in Master/Slave DNS serverlərini MariaDB(MySQL) üzərində quracaq və onları Poweradmin vasitəsi ilə idarə edəcəksiniz

 

PowerDNS versiya: 3.4.6

Domain: example.lan

Master NS1 Name Server 1: ns1.example.lan => ip: 192.168.245.134

Slave NS2 Name Server 2: ns2.example.lan => ip: 192.168.245.135

 

Hər iki serverdə bu addımları atırıq

1. EPEL repozitorlarını quraşdırırıq

 
 [root@ns1 ~]# yum install -y epel-release
   

2. Sistem paketlərini yeniləyirik

 
 [root@ns1 ~]# yum update

3. PowerDNS və MariaDB (MySQL) paketlərini və yükləyirik

 
 [root@ns1 ~]# yum install -y pdns.x86_64 pdns-tools.x86_64 pdns-backend-mysql.x86_64 pdns-recursor.x86_64 mariadb-server
   

4. MySQL-i startup-a əlavə edib işə salırıq

 
 [root@ns1 ~]# systemctl enable mariadb.service
 ln -s '/usr/lib/systemd/system/mariadb.service' '/etc/systemd/system/multi-user.target.wants/mariadb.service'
 [root@ns1 ~]# systemctl start mariadb.service
 

5. Sonra mysql_secure_installation əmrini daxil edib MariaDB-i təhlükəsiz edin. ROOT şifrəsini təyin edin və qalan bütün suallara YES cavabını verin.

 
 [root@ns1 ~]# mysql_secure_installation
 Enter current password for root (enter for none):
 Set root password? [Y/n]
 New password:
 Password updated successfully!
 Remove anonymous users? [Y/n]
 Disallow root login remotely? [Y/n]
 Remove test database and access to it? [Y/n]
 Reload privilege tables now? [Y/n]
 All done!  If you've completed all of the above steps, your MariaDB installation should now be secure.

6. MariaDB/MySQL-ə daxil olun. MariaDB/MySQL üçün yaratdığınız “root” şifrəsini daxil edin və siz MariaDB terminalına daxil olacaqsınız.

 
 [root@ns1 ~]# mysql -u root -p
 Enter password: 
 MariaDB [(none)]>
 

7. Verilənlər bazası (“powerdns”) yaradırıq

 
 [root@ns1 ~]# mysql -u root -p
 Enter password: 
 MariaDB [(none)]>
 

8. “powerdns” verilənlər bazasının bütün yetkilərini “poweradmin” istifadəçisinə veririk. Aşağıda “sizin_shifreniz” yerinə öz təyin etmək istədiyiniz şifrəni daxil edin.

 
 MariaDB [(none)]> GRANT ALL ON powerdns.* TO 'poweradmin'@'localhost' IDENTIFIED BY 'sizin_shifreniz';
 Query OK, 0 rows affected (0.00 sec)
 MariaDB [(none)]> FLUSH PRIVILEGES; 
 Query OK, 0 rows affected (0.00 sec)
 

9. Sonra aşağıdakı kodları hər iki serverdə olduğu kimi daxil edirik (copy-paste)

 
 USE powerdns;
 CREATE TABLE domains (
   id                    INT AUTO_INCREMENT,
   name                  VARCHAR(255) NOT NULL,
   master                VARCHAR(128) DEFAULT NULL,
   last_check            INT DEFAULT NULL,
   type                  VARCHAR(6) NOT NULL,
   notified_serial       INT DEFAULT 0,
   account               VARCHAR(40) DEFAULT NULL,
   PRIMARY KEY (id)
 ) Engine=InnoDB;
  
 CREATE UNIQUE INDEX name_index ON domains(name);
  
  
 CREATE TABLE records (
   id                    INT AUTO_INCREMENT,
   domain_id             INT DEFAULT NULL,
   name                  VARCHAR(255) DEFAULT NULL,
   type                  VARCHAR(10) DEFAULT NULL,
   content               VARCHAR(64000) DEFAULT NULL,
   ttl                   INT DEFAULT NULL,
   prio                  INT DEFAULT NULL,
   change_date           INT DEFAULT NULL,
   disabled              TINYINT(1) DEFAULT 0,
   ordername             VARCHAR(255) BINARY DEFAULT NULL,
   auth                  TINYINT(1) DEFAULT 1,
   PRIMARY KEY (id)
 ) Engine=InnoDB;
  
 CREATE INDEX nametype_index ON records(name,type);
 CREATE INDEX domain_id ON records(domain_id);
 CREATE INDEX recordorder ON records (domain_id, ordername);
  
  
 CREATE TABLE supermasters (
   ip                    VARCHAR(64) NOT NULL,
   nameserver            VARCHAR(255) NOT NULL,
   account               VARCHAR(40) NOT NULL,
   PRIMARY KEY (ip, nameserver)
 ) Engine=InnoDB;
  
  
 CREATE TABLE comments (
   id                    INT AUTO_INCREMENT,
   domain_id             INT NOT NULL,
   name                  VARCHAR(255) NOT NULL,
   type                  VARCHAR(10) NOT NULL,
   modified_at           INT NOT NULL,
   account               VARCHAR(40) NOT NULL,
   comment               VARCHAR(64000) NOT NULL,
   PRIMARY KEY (id)
 ) Engine=InnoDB;
  
 CREATE INDEX comments_domain_id_idx ON comments (domain_id);
 CREATE INDEX comments_name_type_idx ON comments (name, type);
 CREATE INDEX comments_order_idx ON comments (domain_id, modified_at);
  
  
 CREATE TABLE domainmetadata (
   id                    INT AUTO_INCREMENT,
   domain_id             INT NOT NULL,
   kind                  VARCHAR(32),
   content               TEXT,
   PRIMARY KEY (id)
 ) Engine=InnoDB;
  
 CREATE INDEX domainmetadata_idx ON domainmetadata (domain_id, kind);
  
  
 CREATE TABLE cryptokeys (
   id                    INT AUTO_INCREMENT,
   domain_id             INT NOT NULL,
   flags                 INT NOT NULL,
   active                BOOL,
   content               TEXT,
   PRIMARY KEY(id)
 ) Engine=InnoDB;
  
 CREATE INDEX domainidindex ON cryptokeys(domain_id);
  
  
 CREATE TABLE tsigkeys (
   id                    INT AUTO_INCREMENT,
   name                  VARCHAR(255),
   algorithm             VARCHAR(50),
   secret                VARCHAR(255),
   PRIMARY KEY (id)
 ) Engine=InnoDB;
  
 CREATE UNIQUE INDEX namealgoindex ON tsigkeys(name, algorithm);
 

10. SQL terminalını tərk edirik

 
 MariaDB [powerdns]> exit
 Bye

11. /etc/pdns-recursor/recursor.conf faylını açıb aşağıdakı quraşdırmanı edərək yerli rekursiv dns-i hər iki server-də də quraşdırırıq.

 
 [root@ns2 ~]# mv /etc/pdns-recursor/recursor.conf  /etc/pdns-recursor/recursor.conf.orig
 [root@ns2 ~]# vim /etc/pdns-recursor/recursor.conf
 local-port=54
 allow-from=127.0.0.0/8
 dont-query=
 local-address=127.0.0.1
 quiet=yes
 setgid=pdns
 setuid=pdns
 log-common-errors=no
 local-port=54

Master NS1 DNS serverdə PowerDNS-in quraşdırmasını edirik

12. /etc/pdns/pdns.conf faylını nüsxə vəziyyətinə gətiririk.

 
 [root@ns1 ~]# mv /etc/pdns/pdns.conf /etc/pdns/pdns.conf.orig

13. Yeni bir  /etc/pdns/pdns.conf yaradıb aşağıdakı kimi konfiqurasiya edirik

 
 [root@ns1 ~]# vim /etc/pdns/pdns.conf
 allow-recursion=0.0.0.0/0
 # ashagida replikasiya ucun yalniz ns2-nin ip unvanina izin veririk
 allow-axfr-ips=192.168.245.135/32
 also-notify=192.168.245.135
  
 daemon=yes
  
 # AXFR ishe saliriq
 disable-axfr=no
  
 disable-tcp=no
 guardian=yes
  
 # DNS serverimizin xidmet etdiyi interfeysin ip unvanini qeyd edirik
 local-address=192.168.245.134, 127.0.0.1
  
 #Qulaq asdigi port
 local-port=53
 log-dns-details=on
  
 # Log seviyyesini 3-den ashagi qoymaginiz meslehet deyil. Daha cox melumat ucun maksimum 9 ede bilersiniz
 loglevel=5
  
 # powerdns-in modulllarinin yerleshdiyi qovlugu gosteririk. Qovlugu tapmaq ucun "whereis pdns" emrini yigib gore bilersiniz.
 module-dir=/usr/lib64/pdns
 # Master DNS server oldugunu teyin edirik
 master=yes
 slave=no
  
 # Dunya adlarini ip-e cevirmek ucun qurashdirdigimiz local pdns-recursor vasitesi ile 54-cu portla edeceyik
 recursor=127.0.0.1:54
  
 setgid=pdns
 setuid=pdns
 socket-dir=/var/run
 version-string=powerdns
  
 # MySQL verilenler bazasi ucun 7 ve 8ci addimda daxil etdiyiniz melumatlari daxil edin
 launch=gmysql
 gmysql-host=127.0.0.1
 gmysql-user=poweradmin
 gmysql-password=sizin_shifreniz 
 gmysql-dbname=powerdns

Slave NS2 DNS serverdə PowerDNS-in quraşdırmasını edirik

14. /etc/pdns/pdns.conf faylını nüsxə vəziyyətinə gətiririk.

 
 [root@ns2 ~]# mv /etc/pdns/pdns.conf /etc/pdns/pdns.conf.orig

15. Yeni bir  /etc/pdns/pdns.conf yaradıb aşağıdakı kimi konfiqurasiya edirik

 
 [root@ns2 ~]# vim /etc/pdns/pdns.conf
 allow-recursion=0.0.0.0/0
 daemon=yes
  
 # AXFR sondururuk
 disable-axfr=yes
  
 disable-tcp=no
 guardian=yes
  
 # DNS serverimizin xidmet etdiyi interfeysin ip unvanini qeyd edirik
 local-address=192.168.245.135, 127.0.0.1
  
 #Qulaq asdigi port
 local-port=53
 log-dns-details=on
  
 # Log seviyyesini 3-den ashagi qoymaginiz meslehet deyil. Daha cox melumat ucun maksimum 9 ede bilersiniz
 loglevel=5
  
 # powerdns-in modulllarinin yerleshdiyi qovlugu gosteririk. Qovlugu tapmaq ucun "whereis pdns" emrini yigib gore bilersiniz.
 module-dir=/usr/lib64/pdns
 # Slave DNS server oldugunu teyin edirik
 slave=yes
 # Replikasiya muddet araligini 60 saniye teyin edirik
 slave-cycle-interval=60
  
 master=no
  
 # Dunya adlarini ip-e cevirmek ucun qurashdirdigimiz local pdns-recursor vasitesi ile 54-cu portla edeceyik
 recursor=127.0.0.1:54
  
 setgid=pdns
 setuid=pdns
 socket-dir=/var/run
 version-string=powerdns
  
 # MySQL verilenler bazasi ucun 7 ve 8ci addimda daxil etdiyiniz melumatlari daxil edin
 launch=gmysql
 gmysql-host=127.0.0.1
 gmysql-user=poweradmin
 gmysql-password=sizin_shifreniz 
 gmysql-dbname=powerdns

Poweradmin-in quraşdırılması

Poweradmin PHP-də yazılmış PowerDNS-in idarə olunması üçün bir web mühitdir. Poweradmin-i yalnız Master NS1-də quraşdırmağımız kifayət edir.

Master NS1-də aşağıdakı addımları atırıq.

 

16. İlk öncə apache veb serveri və php-ni yükləyirik.

 
 [root@ns1 ~]# yum install -y php php-mcrypt.x86_64 php-mysql php-pear httpd httpd-tools.x86_64

17. /var/www/ qovluğunun içində poweradmin-2.1.7.tgz faylını internetden endirib buraya ekstrakt edirik. Paketin ən son versiyasını internetdə tapa bilərsiniz.

 
 [root@ns1 ~]# cd /var/www/
 [root@ns1 www]# wget http://netix.dl.sourceforge.net/project/poweradmin/poweradmin-2.1.7.tgz
 [root@ns1 www]# tar xvf poweradmin-2.1.7.tgz
 [root@ns1 www]# ls -l
 total 296
 drwxr-xr-x.  2 root root      6 Aug 24 23:12 cgi-bin
 drwxr-xr-x.  2 root root      6 Aug 24 23:12 html
 drwxrwxr-x. 10 root root   4096 Jul  5  2014 poweradmin-2.1.7
 -rw-r--r--.  1 root root 296469 Jul 10  2014 poweradmin-2.1.7.tgz

18. Sonra ekstrakt olunmuş poweradmin-2.x.x qovluğu üçün “poweradmin” simvolik link yaradırıq

 
 [root@ns1 www]# ln -s poweradmin-2.1.7 poweradmin
 [root@ns1 www]# ls -l
 total 296
 drwxr-xr-x.  2 root root      6 Aug 24 23:12 cgi-bin
 drwxr-xr-x.  2 root root      6 Aug 24 23:12 html
 lrwxrwxrwx.  1 root root     16 Oct 14 17:44 poweradmin -> poweradmin-2.1.7
 drwxrwxr-x. 10 root root   4096 Jul  5  2014 poweradmin-2.1.7
 -rw-r--r--.  1 root root 296469 Jul 10  2014 poweradmin-2.1.7.tgz
 [root@ns1 www]# cd
 [root@ns1 ~]#

19. Apache veb server-də PowerDNS-in idarə olunması üçün powerdns.example.lan adında Virtual Host yaradırıq. etc/httpd/conf.d/ qovluğunda virtual host parametrlərini saxlamağınız üçün vhosts.conf konfiqurasiya faylı yaradın. Aşağıdakı misal, powerdns.example.lan domain adı üçün bir şablondur. Lazımı dəyərləri öz domain və serverinizə uyğun dəyişin.

 
 [root@ns1 ~]# vim /etc/httpd/conf.d/vhosts.conf
 <VirtualHost *:80>
     ServerAdmin [email protected]
     ServerName powerdns.example.lan
     ServerAlias www.powerdns.example.az
     DocumentRoot /var/www/poweradmin 
 </VirtualHost>

20. Apache servisini startup-a əlavə edib işə salırıq

 
 [root@ns1 ~]# systemctl enable httpd
 [root@ns1 ~]# systemctl start httpd

Qeyd: Əgər test mühitində işləyirsinizsə və virtual host adını əməliyyat sisteminizin DNS-i resolve etmirsə həmin adı windows maşınınızın C:\Windows\System32\drivers\etc\hosts faylına aşağıdakı şəkildə yazmağınız lazım olacaq.

192.168.245.134 powerdns.example.lan

21. Poweradmin veb interfeysinə qoşulmaq üçün veb brouzerinizdə http://powerdns.example.lan/install linkini daxil edib PowerDNS-in ilkin quraşdırmasını edirik. Aşağıdakı şəkillərə və qeydlərinə diqqət yetirin

Mysql bazasının məlumatlarını daxil edirik

İndi isə PHP-nin bazaya yaza bilməsi üçün istifadəçi adı və şifrəni daxil edin, digər xanaları isə şəkildəkinə uyğun daxil edin.

 

İnstallation Step 5-də göstərilən “GRANT” ilə başlayan təlimatı MySQL-də yerinə yetirin

 
[root@ns1 ~]# mysql -p powerdns 
Enter password:
MariaDB [powerdns]> GRANT SELECT, INSERT, UPDATE, DELETE ON powerdns.* TO 'poweradmin'@'localhost' IDENTIFIED BY ‘sizin_shifreniz’;
MariaDB [powerdns]> FLUSH PRIVILEGES;
MariaDB [powerdns]> quit 

 

/var/www/poweradmin/inc/config.inc.php faylı yaradıb installation step 6 çıxan bu yazını ora nüsxələyirik


[root@ns1 ~]# vim /var/www/poweradmin/inc/config.inc.php

<?php

 

$db_host                = 'localhost';

$db_user                = 'poweradmin';

$db_pass                = 'sizin_shifreniz';

$db_name                = 'powerdns';

$db_type                = 'mysql';

$db_layer               = 'PDO';

 

$session_key            = '0Qgg0aFMWVrBk+ffoBR([qLRGJV-KpxNNVs]JXrsqFD(RA';

 

$iface_lang             = 'en_EN';

 

$dns_hostmaster         = 'hostmaster.example.lan';

$dns_ns1                = 'ns1.example.lan';

$dns_ns2                = 'ns2.example.lan';

 

22. Poweradmin-in ilkin konfiqurasiyasından sonra “install” qovluğunu silirik

 
 [root@ns1 ~]# rm -rf /var/www/poweradmin/install

Poweradmin-in istifadəsi

23. http://powerdns.example.lan/ linkini brouzerinizdə açıb istifadəçi adı (admin)“poweradmin installation step 3” -də yazdığınız şifrəni (admin) daxil edin.

24. Add Master Zone düyməsini sıxıb example.lan master zonasını və PTR rekordları üçün reverse-lookup zonası olan 245.168.192.in-addr.arpa zonasını yaradırıq.

25. Sonra example.lan master zonasına aşağıdakı rekordları əlavə edirik. Hər bir “A” rekordlarını əlavə etdiyimiz zaman eyni zamanda “PTR” rekordunu da əlavə etmək üçün aşağıda “Add also reverse record” yerini işarə edə bilərsiniz. Nəzərə alın ki, “NS” rekordları və NS-lər üçün “A” rekordları olmasa replikasiya olmayacaq

Name

Type

Content

Priority

TTL

example.lan

MX

mail.example

10

example.lan

NS

ns1.example.lan

example.lan

NS

ns2.example.lan

www.example.lan

A

192.168.245.134

ns1.example.lan

A

192.168.245.134

ns2.example.lan

A

192.168.245.135

example.lan

A

192.168.245.134

Add record düyməsini sıxdıqdan sonra yuxarıda “A” və “PTR” rekordun uğurla əlavə olunduğuna dair məlumat görəcəksiniz

26. Reverse-Lookup (PTR)  cədvəlində də “NS” rekordlarını əlavə etməyimiz şərtdir.

Name

Type

Content

Priority

TTL

245.168.192.in-addr.arpa

NS

ns1.example.lan

245.168.192.in-addr.arpa

NS

ns2.example.lan

134.245.168.192.in-addr.arpa

PTR

ns1.example.lan

135.245.168.192.in-addr.arpa

PTR

ns2.example.lan

134.245.168.192.in-addr.arpa

PTR

mail.example.lan

Gördüyümüz kimi “PTR” rekordları avtomatik olaraq əlavə olunmuşdur. Siz burada özünüz əlinizlə də PTR rekordu əlavə edə bilərsiniz.

27. NS2 (SLAVE) DNS serverində “powerdns” verilənlər bazasına Master serverin NS1-in İP ünvanını tanıdırıq. Sonra da lazımı servislərin hamısını startup-a əlavə edib işə salırıq

 
 [root@ns2 ~]# mysql -p powerdns
 Enter password:
 MariaDB [powerdns]> insert into supermasters values ('192.168.245.134', 'ns1.example.lan', 'admin');
 MariaDB [powerdns]> quit
 [root@ns2 ~]# systemctl enable pdns pdns-recursor 
 [root@ns2 ~]# systemctl start pdns pdns-recursor

28. Bundan sonra Master Serverdə (NS1) PowerDNS servislərini işə salıb həm NS1 həm də NS2-də jurnal (loq) fayllarına baxırıq

 
 [root@ns1 ~]# systemctl enable pdns pdns-recursor
 [root@ns1 ~]# systemctl start pdns pdns-recursor

NS1 jurnal faylı

 
 [root@ns1 ~]# tail /var/log/messages|grep pdns
 Oct 19 16:24:46 ns1 pdns[15110]: AXFR of domain 'example.lan' allowed: client IP 192.168.245.135 is in allow-axfr-ips
 Oct 19 16:24:46 ns1 pdns[15110]: AXFR of domain '245.168.192.in-addr.arpa' initiated by 192.168.245.135
 Oct 19 16:24:46 ns1 pdns[15110]: AXFR of domain '245.168.192.in-addr.arpa' allowed: client IP 192.168.245.135 is in allow-axfr-ips
 Oct 19 16:24:46 ns1 pdns[15110]: AXFR of domain 'example.lan' to 192.168.245.135 finished
 Oct 19 16:24:46 ns1 pdns[15110]: AXFR of domain '245.168.192.in-addr.arpa' to 192.168.245.135 finished
 Oct 19 16:24:46 ns1 pdns[15110]: Removed from notification list: '245.168.192.in-addr.arpa' to 192.168.245.135:53 (was acknowledged)
 Oct 19 16:24:46 ns1 pdns[15110]: Removed from notification list: 'example.lan' to 192.168.245.135:53 (was acknowledged)
 Oct 19 16:24:46 ns1 pdns[15110]: Received spurious notify answer for '245.168.192.in-addr.arpa' from 192.168.245.135:53
 Oct 19 16:24:46 ns1 pdns[15110]: Received spurious notify answer for 'example.lan' from 192.168.245.135:53
 Oct 19 16:24:48 ns1 pdns[15110]: No master domains need notifications

NS2 jurnal faylı

 
 [root@ns2 ~]# tail /var/log/messages|grep pdns
 Oct 19 16:24:46 ns2 pdns[5532]: AXFR done for '245.168.192.in-addr.arpa', zone committed with serial number 2015101905
 Oct 19 16:24:46 ns2 pdns[5532]: AXFR done for 'example.lan', zone committed with serial number 2015101906
 Oct 19 16:24:46 ns2 pdns[5532]: Initiating transfer of '245.168.192.in-addr.arpa' from remote '192.168.245.134'
 Oct 19 16:24:46 ns2 pdns[5532]: Initiating transfer of 'example.lan' from remote '192.168.245.134'
 Oct 19 16:24:46 ns2 pdns[5532]: AXFR started for 'example.lan'
 Oct 19 16:24:46 ns2 pdns[5532]: AXFR started for '245.168.192.in-addr.arpa'
 Oct 19 16:24:46 ns2 pdns[5532]: Transaction started for 'example.lan'
 Oct 19 16:24:46 ns2 pdns[5532]: Transaction started for '245.168.192.in-addr.arpa'
 Oct 19 16:24:46 ns2 pdns[5532]: AXFR done for 'example.lan', zone committed with serial number 2015101906
 Oct 19 16:24:46 ns2 pdns[5532]: AXFR done for '245.168.192.in-addr.arpa', zone committed with serial number 2015101905

Test edək

29. Test edərkən ilk öncə hər iki serverdə /etc/resolv.conf faylında “nameserver”-in yalnız yerli maşının İP ünvanını göstərdiyindən əmin olun

 
 [root@ns1 ~]# vim /etc/resolv.conf
 search example.lan 
 nameserver 127.0.0.1
 
 [root@ns2 ~]# vim /etc/resolv.conf
 search example.lan
 nameserver 127.0.0.1

30. NS2-də replikasiyanın gedib getmədiyini yoxlamaq üçün bazanı yoxlayaq

 
 [root@ns2 ~]# mysql -p powerdns
 Enter password:
 MariaDB [powerdns]> select * from domains;
 MariaDB [powerdns]> select * from records;

31. PowerDNS rekordlarını hər iki serverdən aşağıdakı əmrlər vasitəsi ilə yoxlaya bilərik

“NS” rekordu

 
 [root@ns2 ~]# dig ns example.lan
  
 ; <<>> DiG 9.9.4-RedHat-9.9.4-18.el7_1.5 <<>> ns example.lan
 ;; global options: +cmd
 ;; Got answer:
 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39831
 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 3
  
 ;; OPT PSEUDOSECTION:
 ; EDNS: version: 0, flags:; udp: 1680
 ;; QUESTION SECTION:
 ;example.lan.                   IN      NS
  
 ;; ANSWER SECTION:
 example.lan.            86400   IN      NS      ns1.example.lan.
 example.lan.            86400   IN      NS      ns2.example.lan.
  
 ;; ADDITIONAL SECTION:
 ns2.example.lan.        86400   IN      A       192.168.245.135
 ns1.example.lan.        86400   IN      A       192.168.245.134
  
 ;; Query time: 2 msec
 ;; SERVER: 127.0.0.1#53(127.0.0.1)
 ;; WHEN: Mon Oct 19 16:41:18 AZST 2015
 ;; MSG SIZE  rcvd: 108

“MX” rekordu

 
 [root@ns2 ~]# dig mx example.lan
 ; <<>> DiG 9.9.4-RedHat-9.9.4-18.el7_1.5 <<>> mx example.lan
 ;; global options: +cmd
 ;; Got answer:
 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24314
 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 2
  
 ;; OPT PSEUDOSECTION:
 ; EDNS: version: 0, flags:; udp: 1680
 ;; QUESTION SECTION:
 ;example.lan.                   IN      MX
  
 ;; ANSWER SECTION:
 example.lan.            86400   IN      MX      10 mail.example.lan.
  
 ;; ADDITIONAL SECTION:
 mail.example.lan.       86400   IN      A       192.168.245.134
  
 ;; Query time: 1 msec
 ;; SERVER: 127.0.0.1#53(127.0.0.1)
 ;; WHEN: Mon Oct 19 16:42:10 AZST 2015
 ;; MSG SIZE  rcvd: 77

“A” rekordu

 
 [root@ns2 ~]# dig a powerdns.example.lan
  
 ; <<>> DiG 9.9.4-RedHat-9.9.4-18.el7_1.5 <<>> a powerdns.example.lan
 ;; global options: +cmd
 ;; Got answer:
 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51604
 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
  
 ;; OPT PSEUDOSECTION:
 ; EDNS: version: 0, flags:; udp: 1680
 ;; QUESTION SECTION:
 ;powerdns.example.lan.          IN      A
  
 ;; ANSWER SECTION:
 powerdns.example.lan.   86400   IN      A       192.168.245.134
  
 ;; Query time: 1 msec
 ;; SERVER: 127.0.0.1#53(127.0.0.1)
 ;; WHEN: Mon Oct 19 16:44:41 AZST 2015 
 ;; MSG SIZE  rcvd: 65

“PTR” rekordu

 
 [root@ns2 ~]# dig -x 192.168.245.135
  
 ; <<>> DiG 9.9.4-RedHat-9.9.4-18.el7_1.5 <<>> -x 192.168.245.135
 ;; global options: +cmd
 ;; Got answer:
 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51119
 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
  
 ;; OPT PSEUDOSECTION:
 ; EDNS: version: 0, flags:; udp: 1680
 ;; QUESTION SECTION:
 ;135.245.168.192.in-addr.arpa.  IN      PTR
  
 ;; ANSWER SECTION:
 135.245.168.192.in-addr.arpa. 86400 IN  PTR     ns2.example.lan.
  
 ;; Query time: 1 msec
 ;; SERVER: 127.0.0.1#53(127.0.0.1)
 ;; WHEN: Mon Oct 19 16:45:49 AZST 2015 
 ;; MSG SIZE  rcvd: 86

32. PowerDNS-in rekursiv DNS-ini test etmək üçün isə “google.com”-un A rekordlarını araşdıraq

 
 [root@ns2 ~]# dig a google.com
  
 ; <<>> DiG 9.9.4-RedHat-9.9.4-18.el7_1.5 <<>> a google.com
 ;; global options: +cmd
 ;; Got answer:
 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27197
 ;; flags: qr rd ra; QUERY: 1, ANSWER: 16, AUTHORITY: 0, ADDITIONAL: 0
  
 ;; QUESTION SECTION:
 ;google.com.                    IN      A
  
 ;; ANSWER SECTION:
 google.com.             300     IN      A       94.20.252.30
 google.com.             300     IN      A       94.20.252.40
 google.com.             300     IN      A       94.20.252.34
 google.com.             300     IN      A       94.20.252.59
 google.com.             300     IN      A       94.20.252.50
 google.com.             300     IN      A       94.20.252.39
 google.com.             300     IN      A       94.20.252.49
 google.com.             300     IN      A       94.20.252.29
 google.com.             300     IN      A       94.20.252.55
 google.com.             300     IN      A       94.20.252.35
 google.com.             300     IN      A       94.20.252.45
 google.com.             300     IN      A       94.20.252.20
 google.com.             300     IN      A       94.20.252.54
 google.com.             300     IN      A       94.20.252.25
 google.com.             300     IN      A       94.20.252.44
 google.com.             300     IN      A       94.20.252.24
  
 ;; Query time: 340 msec
 ;; SERVER: 127.0.0.1#53(127.0.0.1)
 ;; WHEN: Mon Oct 19 16:48:43 AZST 2015 
 ;; MSG SIZE  rcvd: 284

 

PowerDNS-in authoritive və dünya domain adları üçün isə rekursiv DNS-ini uğurla quraşdırdıq☺

Səs: +20. Bəyənilsin Zəifdir

Müəllif: Nurlan Fərəcov

Şərh yazın