描述
CoreDNS 預設會針對伺服器連線設定合理的逾時時間。然而,在某些情況下,例如 CoreDNS 透過緩慢的行動數據連線提供服務時,預設的逾時時間並非最佳。
此外,某些路由器在使用 DNS over TLS 或 DNS over HTTPS 時會保持連線開啟。允許更長的閒置逾時時間有助於效能並減少此類路由器的問題。
timeouts「外掛程式」允許您設定 CoreDNS 伺服器的讀取、寫入和閒置逾時時間。
語法
timeouts {
read DURATION
write DURATION
idle DURATION
}
對於任何未提供的逾時設定,將使用預設值,這些值可能會因伺服器類型而異。必須指定至少一個逾時設定,否則應省略整個逾時區塊。
範例
啟動一個 DNS-over-TLS 伺服器,該伺服器會在 5553 連接埠接收傳入的 DNS-over-TLS 查詢,並使用 /etc/resolv.conf
中定義的名稱伺服器來解析查詢。此代理路徑使用舊式的 DNS。已設定 10 秒讀取逾時、20 秒寫入逾時和 60 秒閒置逾時。
tls://.:5553 {
tls cert.pem key.pem ca.pem
timeouts {
read 10s
write 20s
idle 60s
}
forward . /etc/resolv.conf
}
啟動一個與前一個範例相似的 DNS-over-HTTPS 伺服器。僅設定了 1 分鐘的讀取逾時。
https://. {
tls cert.pem key.pem ca.pem
timeouts {
read 1m
}
forward . /etc/resolv.conf
}
在 1053 連接埠啟動一個標準的 TCP/UDP 伺服器。已設定讀取和寫入逾時。逾時時間僅適用於伺服器的 TCP 端。
.:1053 {
timeouts {
read 15s
write 30s
}
forward . /etc/resolv.conf
}