Kami baru saja menyiapkan server DNS rekursif menggunakan rilis stabil terbaru dari Bind 9.10
Kami menemukan bahwa pencarian DNS rekursif cukup lambat. Di mana saja dari 1 - 3 detik. Setelah pencarian dalam cache, DNS menyelesaikan dalam hitungan milidetik seperti yang diharapkan.
Kami menggunakan petunjuk ROOT untuk pencarian rekursif dan ini tampaknya dari mana kelambatan itu berasal. Jika kita mengkonfigurasi penerusan, resolusi DNS turun ke waktu rekursi masuk akal 100 - 300 ms.
Untuk layanan yang kami siapkan, saya tidak ingin mengandalkan forwarder, saya lebih suka menggunakan petunjuk root.
Ini adalah konfigurasi utama dari file named.conf kami . Setiap petunjuk untuk membantu meningkatkan kinerja akan sangat bagus.
options{
allow-recursion { any; };
allow-query-cache { any; };
allow-query { any; };
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
zone-statistics yes;
max-cache-ttl 3600;
max-ncache-ttl 3600;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/stats/named_stats.txt";
memstatistics-file "/var/named/stats/named_mem_stats.txt";
rate-limit {
responses-per-second 10;
log-only yes;
};
prefetch 5;};
zone "." {
type hint;
file "named.ca";};
include "/var/named/conf/logging.conf";
Jawaban:
Kami menemukan masalahnya. Itu adalah masalah pembongkaran perangkat keras NIC.
Running
tcpdump -vvv -s 0 -l -n port 53
menemukan beberapa[bad udp cksum 6279!]
kesalahan untuk setiap permintaan DNS.Jelajah kecil di Google mengarahkan saya ke arah yang benar. Ternyata, karena sistem CentOS kami berjalan sebagai VM pada XenServer (masalah serupa dilaporkan dengan VMWare dll.) Pembongkaran perangkat keras NIC diaktifkan secara default.
Berlari
ethtool -k eth0 | grep on
menunjukkan hal berikutMenjalankan
ethtool -K eth0 tx off rx off
offloading TCP TX yang dinonaktifkan. Saya memulai kembali layanan jaringan untuk ukuran yang baikdan diuji BIND. Kami sekarang mendapatkan waktu respons yang sangat cepat dari BIND
sumber
Saya memiliki masalah yang sama dengan pertanyaan rekursif yang sangat lambat pada server fisik BOS CentOS 7 dan menemukan jawaban ini (TX Offloading) dan banyak perbaikan berorientasi IPv6 di sekitar berbagai utas, tidak ada yang bekerja untuk saya.
Ternyata lokasi server tersebut memiliki firewall Cisco ASA yang lebih lama yang membatasi ukuran paket respons UDP hingga 512 byte; tampaknya akhir-akhir ini tanggapan UDP untuk permintaan DNS seringkali jauh lebih besar, hingga sekitar 2000 byte. Ada halaman tentang itu di sini:
Mengapa DNS melalui UDP memiliki batas 512 byte?
Saya mengkonfigurasi ASA untuk memungkinkan paket respons UDP yang lebih besar (ada perintah perbaikan khusus untuk ini) yang menyelesaikan masalah:
https://supportforums.cisco.com/t5/getting-started-with-lans/dns-dropped-because-packets-to-big-for-configured-512/td-p/861718
sumber