linux的dns被劫持
环境:ubuntu16.04
解说:ubuntu使用dnsmasq获取要解析的网站ip,dnsmasq通过域名服务器获取网站ip,并将ip缓存起来,那么就可以减少对外网域名服务器的访问,从而可以使系统迅速地获取ip
今天遇到dns被劫持的情况,在此记录一下:
1.首先如何确定是否被劫持:
那么查询一个并不存在的域名
nslookup notexit.comrrrr
如果返回了一个ip地址,说明dns被劫持了,假设此ip地址为:123.34.5.6
那么用8.8.8.8域名服务器解析一下此错误域名试试:
nslookup notexit.comrrrr 8.8.8.8
输出的内容如下:
jello@jello:~$ nslookup notexit.comrrrr 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53
** server can't find notexit.comrrrr: NXDOMAIN
提示内容说明此域名并不存在
2.那么如何处理这种情况呢?
由于ubuntu16.04使用dnsmasq对域名进行解析,那么修改dnsmasq的配置文件:
因为linux处理dns请求有个限制,在/etc/resolv.conf中只能配置三个dns地址,那么干脆在/etc/resolv.conf文件中只保留localhost为域名服务器,然后新建一个存储外部域名服务器地址的配置文件,并将该配置文件加入到dnsmasq的配置项resolv-file中,例如:
2.1新建配置文件/etc/resolv.my.conf,往其中填入内容如下:
nameserver 8.8.8.8
nameserver 8.8.4.4
2.2往/etc/dnsmasq.conf中添加以下内容:
resolv-file=/etc/resolv.my.conf
2.3重新启动dnsmasq
systemctl restart dnsmasq (此启动方法总是失败,而且还会自动往/var/run/dnsmasq/resolv.conf中添加之前的错误dns地址)
因此使用以下方法启动dnsmasq:
sudo service dnsmasq start
注意:如果重启dnsmasq超时,那么就直接打开/var/run/dnsmasq/resolv.conf
里面有解析不存在域名而得到的域名服务器地址,将存在该域名服务器地址的某行删除即可,假设笔者的该文件内容为:
nameserver 123.34.5.6
nameserver 231.43.5.45
那么直接删掉nameserver 123.34.5.6即可
最有效方案如下:
3.还可以直接使用其它的域名服务器地址替换掉这两个ip,然后再重启dnsmasq,笔者修改后/var/run/dnsmasq/resolv.conf配置文件内容如下:
nameserver 8.8.8.8
nameserver 8.8.4.4
重启dnsmasq:
systemctl restart dnsmasq ((此启动方法总是失败,而且还会自动往/var/run/dnsmasq/resolv.conf中添加之前的错误dns地址)
因此使用以下方法启动dnsmasq:
sudo service dnsmasq start
linux的dns被劫持的更多相关文章
- (DNS被劫持所导致的)QQ音乐与视频网页打开很慢的解决方法
这周开始发现一个很让人抓狂的现象,QQ音乐网页(http://y.qq.com)与QQ视频(http://v.qq.com/)网页打开超慢,甚至是无法打开,严重影响了业余的音乐视频生活. 以QQ视频为 ...
- [Linux] Chang DNS Setting on Linux
主机的虚拟机使用 NAT 模式时, NAT的DNS不好用.于是需要将虚拟机的DNS改成和主机的一样,这样虚拟机也可以请求互联网资源. Linux的DNS 服务器定义在 /etc/resolv.conf
- Linux下dns服务器搭建
Linux下dns服务器搭建1-环境Red Hat Enterprise Linux Server release 6.7 (Santiago)2-配置本地yum源安装dns相关包yum -y ins ...
- Linux刷新DNS缓存
网上查了下,发现linux刷新dns的缓存方法都是: sudo /etc/init.d/nscd restart 但是在我的机器上,发现提示命令找不到: sudo /etc/init.d/nscd: ...
- RedHat Linux AS4 DNS 配置
RedHat Linux AS4 DNS配置 检查当前系统中安装 DNS功能组件bind情况 [root@svr01 /]# rpm -qa|grep bind* ypbind-1.17.2 ...
- Linux的DNS配置2-主从服务器
1.实验背景 之前写了Linux的DNS配置1-DNS入门,其中只用了一台DNS服务器,但一般在大型网络中,都要通过配置辅助DNS服务器可以提高DNS服务的可靠性,本次实验即配置DNS主从服务器 2. ...
- Linux 搭建DNS
Linux 搭建DNS 使用yum源安装 yum -y install bind* 修改主配置文件 [root@localhost ~]# cp /etc/named.conf /etc/named. ...
- 全面了解移动端DNS域名劫持等杂症:原理、根源、HttpDNS解决方案等
1.引言 对于互联网,域名是访问的第一跳,而这一跳很多时候会“失足”(尤其是移动端网络),导致访问错误内容.失败连接等,让用户在互联网上畅游的爽快瞬间消失. 而对于这关键的第一跳,包括鹅厂在内的国 ...
- linux 软连接创建 压缩解压缩 linux的dns服务相关
linux软连接创建 注意用绝对路径,语法如下 ln -s 目标文件绝对路径 软连接名字绝对路径 ln -s /小护士.txt /tmp/hs.txt 修改linux的PS1变量,命令提示符变量 PS ...
随机推荐
- 前端 HTML标签介绍
那什么是HTML标签呢? 1. 在HTML中规定标签使用英文的的尖括号即"<"和">"包起来,如`<html>`.`<p>` ...
- 各版本 MySQL 并行复制的实现及优缺点
MySQL并行复制已经是老生常谈,笔者从2010年开始就着手处理线上这个问题,刚开始两三年也乐此不疲分享,现在再提这个话题本来是难免“炒冷饭”嫌疑. 最近触发再谈这个话题,是因为有些同学觉得“5.7的 ...
- js-jquery-插件开发(二)【最终插件是最后一个,中间是过程】
二.通过$.fn 向jQuery添加新的方法 2.1.基本格式: $.fn.pluginName = function() { //your code goes here } 说明:在$.fn后面添加 ...
- word中拷贝图片到matlab
完全可以! step1:在wod用鼠标右键复制 step2:打开附件-画图,点工具栏-编辑-粘贴(或ctl+v) step3:在MATLAB中调用A = imead(filename) 例如A=ime ...
- Spark-2.0原理分析-shuffle过程
shuffle概览 shuffle过程概览 shuffle数据流概览 shuffle数据流 shuffle工作流程 在运行job时,spark是一个stage一个stage执行的.先把任务分成stag ...
- PAT 1034 Head of a Gang[难][dfs]
1034 Head of a Gang (30)(30 分) One way that the police finds the head of a gang is to check people's ...
- ubuntu开发环境下eclipse的alt+/自动补全功能不能用
解决方法:windows ---preferences---General---keys ,把在搜索框中搜Word Completion,把该快捷键unbind,然后给content assist 绑 ...
- 改善深层神经网络_优化算法_mini-batch梯度下降、指数加权平均、动量梯度下降、RMSprop、Adam优化、学习率衰减
1.mini-batch梯度下降 在前面学习向量化时,知道了可以将训练样本横向堆叠,形成一个输入矩阵和对应的输出矩阵: 当数据量不是太大时,这样做当然会充分利用向量化的优点,一次训练中就可以将所有训练 ...
- iOS常用第三方类库及Xcode插件
第三方类库(github地址): 1.AFNetworking 网络数据 https://github.com/AFNetworking/AFNetworking 2.SDWebImage 图 ...
- angular前端框架
总所周知,在前端开发中,大家用的比较多的框架就是angular,vue,react等,今天就为大家讲一下angular大家框架的原理及运用 1.本次所举的例子是以依赖require.js的, < ...