Sunucularda sunucuda dış domainlere yapılan HTTP ve HTTPS istekleri yaklaşık 15 ila 20 saniyede tamamlanmaktadır. Localhost üzerinden yapılan testlerde herhangi bir gecikme görülmemektedir.

Belirtiler
curl http://127.0.0.1 normal sürede yanıt verirken
curl https://domain.com yaklaşık 20 saniyede tamamlanır
dig komutu 127.0.0.53 adresine timeout verir
systemd resolved loglarında degraded feature set uyarıları görülür

Sebep
Sorun web servisi, CPU veya saldırı kaynaklı değildir.

VPS üzerinde kullanılan provider DNS sunucuları yavaş veya kararsız çalışmaktadır. systemd resolved bu DNS sunucularına erişmeye çalışırken UDP ve TCP fallback yapar ve bu durum her DNS sorgusunda gecikmeye neden olur.

Çözüm

  1. Public DNS tanımlayın

/etc/systemd/resolved.conf dosyasına ekleyin

DNS=1.1.1.1 8.8.8.8

  1. Netplan üzerinde provider DNS’i kaldırın

/etc/netplan/50 cloud init.yaml içindeki nameservers bölümünü şu şekilde değiştirin

addresses
1.1.1.1
8.8.8.8

  1. Yapılandırmayı uygulayın

netplan apply
systemctl restart systemd resolved

Kontrol

resolvectl status çıktısında hem global hem interface seviyesinde yalnızca 1.1.1.1 ve 8.8.8.8 görünmelidir.

Sonuç
Problem upstream DNS kaynaklıdır. Provider DNS kaldırılıp public DNS kullanıldığında gecikme tamamen ortadan kalkar.

🤔

Bu cevap yeterince yardımcı oldu mu?

Görüşünüz bizim için değerli!