We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
os:ubuntu 12.04 LTS
软件:dnsmasq
dns测试:
dig www.facebook.com @8.8.8.8 +short 37.61.54.158
在wiki词条域名服务器缓存污染中可以发现37.61.54.158在虚假ip地址中,说明此dns已遭污染。
dig www.facebook.com @208.67.222.222 -p 443 31.13.79.49
31.13.79.49为facebook的正确地址。google的dns服务不支持特殊端口查询,但opendns支持,其ip为208.67.222.222,208.67.222.220,支持的特殊端口为443,5353。
在ubuntu中,我们可以用dnsmasq来指定被污染ip用特殊端口查询.
从Ubuntu 12.04开始网络管理器默认开启了dnsmasq,但出于安全的考虑没有开启其缓存功能。这个改动至少在我这里导致了一些问题,比如偶尔出现网速变慢。经过尝试,可以完全禁用该服务,或者设置使用谷歌DNS服务,同时开启dnsmasq的本地缓存(可以大幅提高重复访问网站时的响应速度)。
完全禁用的方法:
sudo vim /etc/NetworkManager/NetworkManager.conf
注释掉里面的dns=dnsmasq 然后重启网络管理器
sudo restart network-manager
重新安装完整dnsmasq:
sudo apt-get install dnsmasq
然后
sudo vi /etc/resolv.conf
确保resolv.conf内容为:
nameserver 127.0.0.1
sudo vim /etc/dnsmasq.conf
直接在文件最后添加:
listen-address=127.0.0.1 bind-interfaces cache-size=100000 domain-needed resolv-file=/etc/resolv.dnsmasq server=/facebook.com/208.67.222.222#5353
其中
server=/facebook.com/208.67.222.222#5353
即可指定访问facebook网站时向opendns的5353端口进行dns请求,以此类推。 这个设置支持泛解析,比如
server=/com/208.67.222.222#5353
即指定所有.com域名。 重启dnsmasq:
sudo service dnsmasq restart
再测试dns:
dig www.facebook.com +short
若返回31.13.79.49或其他不在虚假ip表里的ip即成功。
ps:用命令
ps -fC dnsmasq|more
查阅得知dnsmasq在ubuntu中的dns设置在/var/run/dnsmasq/resolv.conf中。 dnsmasq的日志记录在/var/log/syslog中。
参考链接: Ubuntu开启dnsmasq缓存并使用谷歌DNS服务
OpenWRT路由器unbound+dnsmasq解决DNS污染与劫持
关于修改 NetworkManager 托管下 dnsmasq 的问题
The text was updated successfully, but these errors were encountered:
No branches or pull requests
os:ubuntu 12.04 LTS
软件:dnsmasq
dns测试:
在wiki词条域名服务器缓存污染中可以发现37.61.54.158在虚假ip地址中,说明此dns已遭污染。
31.13.79.49为facebook的正确地址。google的dns服务不支持特殊端口查询,但opendns支持,其ip为208.67.222.222,208.67.222.220,支持的特殊端口为443,5353。
在ubuntu中,我们可以用dnsmasq来指定被污染ip用特殊端口查询.
从Ubuntu 12.04开始网络管理器默认开启了dnsmasq,但出于安全的考虑没有开启其缓存功能。这个改动至少在我这里导致了一些问题,比如偶尔出现网速变慢。经过尝试,可以完全禁用该服务,或者设置使用谷歌DNS服务,同时开启dnsmasq的本地缓存(可以大幅提高重复访问网站时的响应速度)。
完全禁用的方法:
注释掉里面的dns=dnsmasq
然后重启网络管理器
重新安装完整dnsmasq:
然后
确保resolv.conf内容为:
然后
直接在文件最后添加:
其中
即可指定访问facebook网站时向opendns的5353端口进行dns请求,以此类推。
这个设置支持泛解析,比如
即指定所有.com域名。
重启dnsmasq:
再测试dns:
若返回31.13.79.49或其他不在虚假ip表里的ip即成功。
ps:用命令
查阅得知dnsmasq在ubuntu中的dns设置在/var/run/dnsmasq/resolv.conf中。
dnsmasq的日志记录在/var/log/syslog中。
参考链接:
Ubuntu开启dnsmasq缓存并使用谷歌DNS服务
OpenWRT路由器unbound+dnsmasq解决DNS污染与劫持
关于修改 NetworkManager 托管下 dnsmasq 的问题
The text was updated successfully, but these errors were encountered: