Linux下如何用dnsmasq做dns cache server配置

发布时间 - 2023-05-15 00:00:00    点击率:

安装过程比较简单

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:*


# linux  # 可以用  # 一台  # 要在  # 也很  # 很简单  # 只需要  # 可以实现  # 量大  # 重启  # 本机 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 阿里云高弹*务器配置方案|支持分布式架构与多节点部署  如何在Ubuntu系统下快速搭建WordPress个人网站?  Linux系统命令中screen命令详解  Swift开发中switch语句值绑定模式  如何在VPS电脑上快速搭建网站?  昵图网官网入口 昵图网素材平台官方入口  原生JS实现图片轮播切换效果  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  如何在IIS中新建站点并解决端口绑定冲突?  Laravel怎么为数据库表字段添加索引以优化查询  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  三星网站视频制作教程下载,三星w23网页如何全屏?  JS中对数组元素进行增删改移的方法总结  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  Android仿QQ列表左滑删除操作  长沙企业网站制作哪家好,长沙水业集团官方网站?  如何批量查询域名的建站时间记录?  Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧  简单实现Android验证码  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环  如何为不同团队 ID 动态生成多个“认领值班”按钮  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  教你用AI润色文章,让你的文字表达更专业  如何用5美元大硬盘VPS安全高效搭建个人网站?  如何快速搭建安全的FTP站点?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】  魔毅自助建站系统:模板定制与SEO优化一键生成指南  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  Laravel怎么在Blade中安全地输出原始HTML内容  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  Laravel storage目录权限问题_Laravel文件写入权限设置  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  用yum安装MySQLdb模块的步骤方法  javascript中闭包概念与用法深入理解  香港服务器租用费用高吗?如何避免常见误区?  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  Laravel如何发送系统通知?(Notification渠道示例)  怎么用AI帮你设计一套个性化的手机App图标?