zoukankan      html  css  js  c++  java
  • DNSMAQ 搭建 DNS 服务

    DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。自己搭建公共DNS更加灵活,如果是在本地搭建,还可以大幅提高解析速度。
    相比较BIND那复杂的配置来说,dnsmasq轻量很多

    centos7安装dnsmaq

    yum -y install dnsmasq		#yum方式安装
    

    配置

    1.配置文件在 /etc/dnsmasq.conf,我们要让它能用起来需要做如下配置:

    #指定上游dns服务器    
    resolv-file=/etc/resolv.dnsmasq.conf    
    #表示严格按照 resolv-file 文件中的顺序从上到下进行 DNS 解析, 直到第一个成功解析成功为止    
    strict-order    
    # 开启后会寻找本地的hosts文件在去寻找缓存的域名,最后到上游dns查找    #no-resolv    
    listen-address=0.0.0.0		#0.0.0.0 设置为公网IP    
    conf-dir=/etc/dnsmasq.d		# 我们的解析记录都写到这个目录下
    

    2.创建 /etc/resolv.dnsmasq.conf ,然后添加:

    # cat /etc/resolv.dnsmasq.conf    
    nameserver 119.29.29.29    
    nameserver 114.114.114.114    
    nameserver 8.8.8.8    
    nameserver 168.95.1.1
    

    3.然后创建 /etc/dnsmasq.d/cloud.conf,添加:

    address=/baidu.com/127.0.0.1 		# 将百度的域名解析到127.0.0.1       
    address=/ad.youku.com/127.0.0.1 	# 禁止优酷广告    
    address=/ad.iqiyi.com/127.0.0.1  	# 禁止iqiyi广告
    

    格式是:

    address=/domain.com/dns
    

    比如上面的百度,我就把它都解析到127.0.0.1。

    实现DNS分流

    server=/cn/114.114.114.114 			# cn的域名都走114的dns    
    server=/google.com/115.159.220.214	# 将谷歌的解析都走115.159.220.214
    

    上面的是将所有cn结尾的域名都走114解析,下面是将google.com 走115.159.220.214解析。

    开启防火墙53端口后,本地测试下 53 端口是否是通的:

    ➜  www nc -vuz 121.42.18.6 53    
    found 0 associations    
    found 1 connections:         
    	1:    flags=82<CONNECTED,PREFERRED>        
    	outif (null)        
    	src 192.168.2.32 port 49939        
    	dst 121.42.18.6 port 53        
    	rank info not available    
    Connection to 121.42.18.6 port 53 [udp/domain] succeeded!
    
    service dnsmasq start		#启动dnsmaq:
    systemctl enable dnsmasq 	#设置为开机自启动。
    

    测试

    ➜  www dig m.baidu.com @121.42.18.6    
    ; <<>> DiG 9.8.3-P1 <<>> m.baidu.com @121.42.18.6    
    ;; global options: +cmd    
    ;; Got answer:    
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41523    
    ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0    
    
    ;; QUESTION SECTION:    
    ;m.baidu.com.            IN  A    
    
    ;; ANSWER SECTION:    
    m.baidu.com.        0   IN  A   127.0.0.1    
    
    ;; Query time: 30 msec    
    ;; SERVER: 121.42.18.6#53(121.42.18.6)    
    ;; WHEN: Mon Aug 28 10:32:27 2017    
    ;; MSG SIZE  rcvd: 45
        
    # 可以看到,百度的子域名已经被解析到127.0.0.1了,此外还可以配合dnscrypt-proxy 对查询进行加密,这里就不展开了。
    
  • 相关阅读:
    接口测试 API测试
    接口测试 JMeter 开坑
    【测试笔记】集成测试 自顶向下 自底向上
    白盒测试 各类覆盖方法辨析
    eureka 管理界面打不开
    Spring Boot 2.0 Admin
    spring swagger2配置
    解决 Registered driver with driverClassName=oracle.jdbc.driver.OracleDriver was not found, trying direct instantiation.
    springboot+mybatis在插入空值时报错的问题
    Vue Cli 3代理配置
  • 原文地址:https://www.cnblogs.com/fan-gx/p/11801124.html
Copyright © 2011-2022 走看看