Dns
如何使用萬用字元或正則表達式阻止主機名?
目前我使用 big
/etc/hosts
來阻止不需要的主機名。但是文件越來越大,接近 700000 個條目。有很多類似的條目,所以我想使用萬用字元,*.co.kr
因為我不會說韓語。此外,以數字開頭或長度超過 64 個字元的主機名也可能是我想要阻止的候選對象。AFAIK
/etc/hosts
不提供該功能。我認為需要某種 DNS 守護程序。有任何想法嗎?編輯:我選擇了韓國頂級域名作為例子。我
/etc/hosts
的越來越大,越來越難維護。那裡的大多數主機名都可以簡化為一小組規則。
名稱解析是阻止不受歡迎的網路流量的一種非常糟糕的方法。要阻止和不阻止的內容列表不斷變化,有時您需要阻止每個 URL 而不僅僅是每個主機。AdBlock* 和 uBlock* 等瀏覽器擴展往往做得更好。如果要編寫自己的列表,可以編寫PAC 文件。
如果您真的想阻止基於域名的請求,請使用 DNS 代理,而不是使用
/etc/hosts
./etc/hosts
只能做個別主機。Dnsmasq是一種流行的輕量級 DNS 代理。一些發行版預設設置了 dnsmasq;大多數發行版都有它作為一個包。要使用 dnsmasq 使整個域顯示為 localhost,您可以使用以下行/etc/dnsmasq.conf
:address=/co.kr/127.0.0.2