当前位置: 首页 > 教程 > 原创 > CentOS一键安装DNSmasq实现科学上网

CentOS一键安装DNSmasq实现科学上网

原创 9条评论 2017-8-31 7,983 views

DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。在《Linux安装DNSmasq搭建自己的公共DNS》分享过手动配置方法,介于某些朋友对Linux不太熟悉,xiaoz写成了一键脚本。

适用环境

CentOS 6.x 7.x

脚本特点

  • 一键安装,0配置即可使用
  • 自动放行tcp/upd端口
  • 实现科学上网(可访问Google Facebook)
  • 定时更新hosts列表

安装

复制下面的命令进行安装,一行一个。

wget https://raw.githubusercontent.com/helloxz/dnsmasq/master/dns.sh --no-check-certificate
chmod +x dns.sh
./dns.sh

使用

参考《windows7设置DNS教程》将DNS修改为您服务器IP

常见问题

如何判断DNSmasq是否正常启动?

输入命令netstat -apn|grep 'dns',看到如下截图说明已经正常启动。

配置了DNS无法正常上网,提示找不到DNS?

情况一:检查服务器是否支持安全组功能,请检查安全组是否放行TCP/UDP 53端口

情况二:如果使用的腾讯云服务器,脚本是获取的公网IP,需要修改/etc/dnsmasq.conf这个配置文件,将listen-address=改成私网IP,如下截图。

若还遇到其它问题,请在下面留言反馈。

其它说明

推荐使用国内服务器进行搭建,否则解析速度你会哭的,脚本特点是支持科学上网,并定期更新hosts,如果您还想实现去广告等特点,则需要自行修改配置规则了。

源码:https://github.com/helloxz/dnsmasq

补充

此方法已经无法实现科学上网,仅能实现普通DNS服务。

<新常态>:9.19号封锁升级,YouTube、Facebook已经被加入特殊照顾名单,待遇与*.twitter.com相同。若使用官方IP(ipv4)经过防火墙时一旦探测到相关域名的CA证书,对应IP通信百分之百被拦截切断。若使用sni服务器IP反代部分域名也会被拦截,但并不是全部IP都会被拦截,能用的IP很少。拦截只针对经过出口路由上。不远将来全面部署CA证书拦截等技术,到时候hosts将成为历史!!

9 条评论 “CentOS一键安装DNSmasq实现科学上网”

  1. 红魔馆说道:

    额,大佬我使用了,本身就是外国服务器,想用dnsmasq做缓存,但是,检验并没有成功为啥?

  2. 挖站否说道:

    以前只知道可以用作DNS,没想到还有这么用途。

    1. xiaoz说道:

      现在hosts的方法也失效了,真是曹丹。

  3. zhujiwiki说道:

    可以绕过高Q不

    1. xiaoz说道:

      部分网站可以,原理是通过hosts来实现。老哥,卖个域名给你zhuji.wiki,哈哈。😃

      1. zhujiwiki说道:

        好不容易才换到com的。不折腾了。

  4. 热腾网说道:

    想知道DNS的劫持是怎么做的。

    1. xiaoz说道:

      我的理解是在自己的公共DNS上将域名解析到一个错误的地址,不知道对不对。

    2. 匿名说道:

      国内有根DNS镜像服务器,为了保证访问速度,一般都会有根镜像,但是ZF在镜像上做了一些手脚,把要封锁的域名在镜像服务器上指向错误的IP地址,这样递归DNS在查询的时候就会获得错误的IP地址结果,而且递归DNS也会有缓存,这样慢慢就扩散到全国了

发表评论

电子邮件地址不会被公开。 必填项已用*标注