dnsmasq 白名單限制 dns緩存cache設置


dns劫持以前都是黑名單模式
有需要攔截的加server劫持整個域名解析

resolv-file=/etc/resolv.conf
listen-address=192.168.192.245
#ddn-hosts=/etc/banner_add_hosts

addn-hosts=/etc/dnsmasq.d/google.host
address=/wiki.local/192.168.192.239


server=/weibo.com/10.1.1.222

或者單個address劫持單記錄
address=/www.weibo.com/10.1.1.222

還可以通配模式
address=/.weibo.com/10.1.1.222

白名單模式先劫持所有域名
address=/#/10.1.1.1

開放解析的時候只需要加server指向正常的DNS服務器就行
server=/sskaje.me/10.0.0.1

dnsmasq的dns緩存cache設置

緩存的數量
cache-size=10240

如果查詢的域名沒ttl,則使用此設置為緩存ttl時間
neg-ttl=600

指定返回給客戶端的ttl時間,小於查詢域名的ttl以設置為准,服務器中緩存ttl不變,大於以域名的ttl為准,
max-ttl=600

同max-ttl類似,這個是dnsmasq服務器緩存時間設定,低於域名ttl以設定為准,否則以域名ttl為准
max-cache-ttl=3600

和max-cache-ttl相反,如果域名ttl低於設定值,強制使用設定為dnsmasq服務器的緩存時間,限制不能超過3600
min-cache-ttl=3600

總結:
max-ttl和max-cache-ttl沒必要設置,想要客戶端緩存時間小於域名ttl設置max-ttl,但是dnsmasql緩存時間以域名ttl為准。
想要dnsmasq緩存時間小於域名ttl可以設置max-cache-ttl,同時如果沒設置max-ttl首次請求返回客戶端的ttl時間以域名ttl為准,再次請求返回的ttl則是dnsmasq緩存剩余時間ttl。
如果想強制任何域名的緩存時間使用min-cache-ttl,dnsmasq限制最高為1小時,更高需重新編譯,首次請求返回ttl為域名ttl,再次請求返回的ttl則是dnsmasq緩存剩余時間ttl。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM