当前位置: 首页 > 编程笔记 >

Linux下用dnsmasq做dns cache server的配置方法

酆茂才
2023-03-14
本文向大家介绍Linux下用dnsmasq做dns cache server的配置方法,包括了Linux下用dnsmasq做dns cache server的配置方法的使用技巧和注意事项,需要的朋友参考一下

目前最新版是2.7.1 ,可去其FTP下载:http://www.thekelleys.org.uk/dnsmasq/

安装过程比较简单

yum -y install dnsmasq* 
wget http://www.keepalived.org/software/keepalived-1.2.9.tar.gz
tar zxvf keepalived-1.2.9.tar.gz
cd keepalived-1.2.9
./configure --prefix=/usr/local/keepalived
make && make install
mkdir /etc/keepalived
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
ln -s /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
ln -s /usr/local/keepalived/sbin/keepalived /usr/sbin/
chkconfig --add keepalived
chkconfig --level 35 keepalived on

keepalived的配置很简单,只需要配置一个VIP可以在两台Server之间飘来飘去就可以实现主备了

! Configuration File for keepalived
 
global_defs {
  notification_email {
   xxx@xxx.com
  }
  notification_email_from xxx@xxx.com
  smtp_server 127.0.0.1
  smtp_connect_timeout 30
  router_id LVS_DEVEL
}
 
vrrp_instance dnscache {
  state MASTER         // 另一台配置BACKUP
  interface eth1        // 在哪个接口上进行服务器状态检测
  virtual_router_id 51
  priority 180         // BACKUP机器上配置100
  advert_int 1         // 检查间隔,单位为秒
  authentication {
    auth_type PASS
    auth_pass 1234
  }
 
  virtual_ipaddress {       // VIP设置,指定到内网网卡 
    192.168.100.99/24 dev eth1
  }
}

dnsmasq的配置也很简单

resolv-file=/etc/resolv.dnsmasq.conf
cache-size=1000
conf-dir=/etc/dnsmasq.d


  将dns地址写入到/etc/resolv.dnsmasq.conf文件中

echo "nameserver 8.8.8.8" > /etc/resolv.dnsmasq.conf

  本机和局域网其它全部的服务器dns解析都用它

echo "nameserver 192.168.100.99" > /etc/resolv.conf

  最后找一台局域网Server验证一下,如果能解析就说明正常了.

nslookup www.google.cn 192.168.100.99

  此方案只适合小型企业,规模少的情况下使用,解析量大的时候还是用bind最好。

下面是其它网友的补充:


sudo pacman -S --needed dnsmasq

cd /etc

[admin@huangye etc]$ sudo cp -v dnsmasq.conf{,.orig} `dnsmasq.conf' -> `dnsmasq.conf.orig'

[admin@huangye etc]$ sudo vim dnsmasq.conf


相比来说,dnsmasq的配置简单多了:

resolv-file=/etc/dnsmasq.resolv.conf

addn-hosts=/etc/dnsmasq.hosts

local=/localnet/

no-dhcp-interface=eth0

conf-dir=/etc/dnsmasq.d 


[admin@huangye etc]$ sudo cp -v resolv.conf dnsmasq.resolv.conf

Password: 

`resolv.conf' -> `dnsmasq.resolv.conf'

sudo mkdir /etc/dnsmasq.d

sudo touch /etc/dnsmasq.hosts

sudo /etc/rc.d/dnsmasq start

最后,别忘记加入rc.conf DAEMONS,注意要在network后面。

dnsmasq 可从额外的hosts文件读取条目,如可以这样添加正向解析:

echo "IP地址 域名" > /etc/dnsmasq.hosts

另外,重启dnsmasq可以用SIGHUP(可以在修改hosts文件后,让配置生效)

 killall -s SIGHUP dnsmasq

查看服务状态:

 netstat -tunl
tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN
udp        0      0 0.0.0.0:53              0.0.0.0:*

再dig 一下,发现稳定在4ms ,我晕,同样的配置,我在一台ubuntu server 10.04 上面dig 是1ms ,在我本地居然在4ms ,囧 

 类似资料:
  • 本文向大家介绍linux下配置yum源方法详解,包括了linux下配置yum源方法详解的使用技巧和注意事项,需要的朋友参考一下 本人使用的方法一,成功配置,方法二没测过,可以作为参考 方法一: 1.确保RHEL5中已经安装了yum 2.修改源配置文件 #vim /etc/yum.repos.d/CentOS-Base.repo (如果目录下没有.repo文件自己创建一个) 3. 导入key 4.

  • 本文向大家介绍Linux下Docker及portainer相关配置方法,包括了Linux下Docker及portainer相关配置方法的使用技巧和注意事项,需要的朋友参考一下 一、安装使用Docer CE 本文以CentOS 7为例,安装docker CE版本,docker有两种版本,社区版本CE和企业版本EE,此处学习研究以CE版本为例, 两种安装方式可选:1、使用yum安装,2、使用脚本自动安

  • 本文向大家介绍linux系统下的ssh登录和配置方法,包括了linux系统下的ssh登录和配置方法的使用技巧和注意事项,需要的朋友参考一下 一 ssh的两种登录方式 1密码登录: 2公钥密钥登录 客户端连接服务器时候会生成.ssh目录,此时保证客户端下生成.ssh目录 第一步服务器端生成公钥和密钥 查看.ssh文件下的内容; 第二步:服务器添加认证 第四步:服务器分发私钥给客户端 完成之后就可以让

  • 本文向大家介绍Linux下redis5.0.5的安装过程与配置方法,包括了Linux下redis5.0.5的安装过程与配置方法的使用技巧和注意事项,需要的朋友参考一下 一、 下载redis 我一般去这里下载:redis下载地址 也可以自行去官网下载 提示:此处安装的为redis-5.05的版本 二、上传redis安装包(我的安装目录为/data/local/tool/redis-5.0.5) 1.

  • 本文向大家介绍linux tomcat配置https的方法,包括了linux tomcat配置https的方法的使用技巧和注意事项,需要的朋友参考一下 创建.keystore 然后修改tomcat配置文件server.xml 这样浏览器访问就相对安全了,浏览器和服务端进行了非对称加密的握手,然后协商对称加密的密钥,然后进行相对快速的对称加密传输。 即时密文在网络传输中被截获,因为无法获知对称密钥,

  • 本文向大家介绍linux下Nginx+Tomcat负载均衡配置方法,包括了linux下Nginx+Tomcat负载均衡配置方法的使用技巧和注意事项,需要的朋友参考一下 Nginx+tomcat是目前主流的java web架构,如何让nginx+tomcat同时工作呢,也可以说如何使用nginx来反向代理tomcat后端均衡呢?直接安装配置如下: 1、JAVA JDK安装: 2、Nginx安装: 3