如何解决linux dns被劫持?

1.首先如何确定是否被劫持:

那么查询一个并不存在的域名

nslookup mmmmm.happy

如果返回了一个ip地址,说明dns被劫持了,假设此ip地址为:123.34.5.6

那么用8.8.8.8域名服务器解析一下此错误域名试试:

nslookup mmmmm.happy 8.8.8.8

输出的内容如下:

[root@master etc]# nslookup mmmmm.happy 8.8.8.8

Server:         8.8.8.8

Address:        8.8.8.8#53

** server can't find mmmmm.happy: NXDOMAI

提示内容说明此域名并不存在

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

注意:如果重启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

Linux dns劫持程序,linux的dns被劫持(解决方案)相关推荐

  1. linux连接到程序,Linux下C程序的链接过程

    今天看到一个很有意思的小程序,它让我对Linux下C程序的编译链接有了一个全新的认识! 这个程序的就是写一个简单的输出"hello World!": 要求:1.不使用C运行库,写一 ...

  2. linux 中断 应用程序,Linux中断编程

    本文转载自[微信公众号:机械猿,ID:on_ourway]经微信公众号授权转载,如需转载与原文作者联系 基本概念 中断是指CPU在执行程序时,由于内外部事件或由程序预先安排的事件,导致CPU 暂停当前 ...

  3. linux 查找某个程序,Linux查找特定程序whereis实例详解

    Linux 查找特定程序 whereis whereis 命令主要用于查找程序文件,并提供这个文件的二进制可执行文件.源代码文件和使用手册存放位置. 1.查找命令程序 例如,查找 touch 命令 [ ...

  4. linux亮度调节程序,linux调节屏幕亮度

    新建三个文本文件并给予执行权限: up.sh if [ ! -w /sys/class/backlight/intel_backlight/brightness ];then echo "p ...

  5. linux 查看端口 程序,linux开发:Linux下查看端口占用

    前段时间有学生问到,怎么查看 linux系统中已经被占用的端口?下面就统一给大家解释一下. 提到端口,那首先来回顾端口定义,为了区分一台主机接收到的数据包应该转交给哪个任务来进行处理,使用端口号来区别 ...

  6. 嵌入式linux如何下载程序,Linux平台的下载程序-嵌入式系统-与非网

    有许多网络文件下载工具可以在Windows平台下很好地工作,如NetAnts."网际快车".TelePro等,还有像WebZip那样功能强大的离线浏览器.这些工具使我们可以在Win ...

  7. linux xia 安装程序,linux更新或安装libzip

    在安装php的时候出现如下提示: checking for libzip... not found configure: error: Please reinstall the libzip dist ...

  8. linux停止jar程序,Linux 启动停止SpringBoot jar 程序部署Shell 脚本的方法

    废话不多说了,先给大家上代码,具体代码如下所示: #!/bin/bash cd `dirname $0` CUR_SHELL_DIR=`pwd` CUR_SHELL_NAME=`basename ${ ...

  9. linux uart中断程序,linux 串口中断实现

    我在linux系统下写的串口程序,需要实时的读取串口来的数据,但串口来的数据又是不定时的,想用中断的方式响应,看了一些资料,总觉的还所有些不妥. 首先,select函数,他需要一直在while中检测读 ...

  10. linux加法计算器程序,Linux下实现一个计算器程序

    (集体内容详见ChinaUnix社区) 现在要在Linux下实现一个计算器程序, 它有如下的要求: 1.  能识别英文数字:比如 three hundred and ninety two, 要能转换为 ...

最新文章

  1. 第一篇学术演讲准备两个月,去了谷歌却做不了深度学习,听Facebook田渊栋谈人生挑战与选择...
  2. python+flask+vue开发(1)--虚拟环境创建
  3. 介绍一些简单实用的Python小tricks
  4. Spark出现java.lang.stackoverflowerror的解决方法
  5. 为什么阿里规定需要在事务注解 @Transactional 中指定 rollbackFor?
  6. lvs在linux系统下安装,Linux下安装lvs
  7. 一起教育科技携手神策数据,数据赋能智能教育新时代
  8. 使用Spring Boot和MongoDB快速进行Web应用原型设计
  9. JAVA日期和时间API
  10. VC++删除浮动工具条中“关闭”按钮
  11. 警惕新型“二进制植入”漏洞,立即更新至 Npm 最新版本
  12. aix oracle集群日志,在AIX环境下实施Oracle 集群RAC的结构 文平
  13. ssh连接局域网内两台主机
  14. html设置隐藏窗口,html – 在窗口大小调整时逐个隐藏菜单项
  15. 编译时:virtual memory exhausted: Cannot allocate memory
  16. win7 64位系统HP LaserJet P1008 / HP LaserJet P1008 P1007 驱动安装成功,但无法打印的原因...
  17. python英文分词统计词频_Python 分词并统计词频
  18. android ios 微信 备份通讯录备份通讯录备份通讯录备份,微信通讯录备份在哪里?新版微信怎么备份通讯录?...
  19. Ie8兼容性问题web.config设置
  20. Java LocalDateTime给当前时间加半小时

热门文章

  1. udal导mysql_MySQL性能测试工具之mysqlslap
  2. (转)计算机组成与结构:原码、反码、补码、移码、二进制乘除法运算
  3. Kickstart自动化安装平台
  4. matlab里det函数的神奇bug
  5. LAMP 技术简介(1)
  6. 选型宝访谈:怎样构建端到端的IT透视能力?
  7. 成都工业学院(成都无机校/电子机械高等专科学校)百年校庆之行记
  8. xp系统计算机怎么连接到网络打印机,老司机教你win7如何连接共享xp打印机
  9. android中关于keytool 错误:java.lang.Exception:密钥库文件不存在: 解决步骤
  10. 【arXiv 2021】Cluster Contrast for Unsupervised Person Re-Identification(CCU)