飞跃高山与大洋的鱼飞跃高山与大洋的鱼
首页
先看
计算机
  • 数学
  • Linux
  • Arch
  • Manjaro
  • Ubuntu
  • CentOS
  • Kubernetes
  • Web
  • JavaScript
  • TypeScript
  • CSS
  • Canvas
  • Vue
  • Vite
  • NuxtJS
  • Webpack
  • Flutter
  • D3
  • Jest
  • WeApp
  • Utils
  • Nodejs
  • Nestjs
  • Golang
  • Nginx
  • Traefik
  • MySQL
  • MongoDB
  • Redis
  • Docker
算法
  • 像素风
  • Git
  • Github
  • VSCode
  • Chrome
  • Google
  • Bookmark scripts
  • 导航 🎉
  • VuePress 侧边栏插件
  • VuePress 官网
🚇 开往
首页
先看
计算机
  • 数学
  • Linux
  • Arch
  • Manjaro
  • Ubuntu
  • CentOS
  • Kubernetes
  • Web
  • JavaScript
  • TypeScript
  • CSS
  • Canvas
  • Vue
  • Vite
  • NuxtJS
  • Webpack
  • Flutter
  • D3
  • Jest
  • WeApp
  • Utils
  • Nodejs
  • Nestjs
  • Golang
  • Nginx
  • Traefik
  • MySQL
  • MongoDB
  • Redis
  • Docker
算法
  • 像素风
  • Git
  • Github
  • VSCode
  • Chrome
  • Google
  • Bookmark scripts
  • 导航 🎉
  • VuePress 侧边栏插件
  • VuePress 官网
🚇 开往
  • LINUX

    • 为什么不试试 Linux 呢
    • 一切皆文件
    • Shell 脚本
    • 别名 alias
    • 分发脚本 ansible
    • 归档和压缩
    • 命令选项
    • 命令行快捷键
    • Linux 常用命令
    • 解放双手计划
    • 检测服务器通达
    • Linux 系统目录结构
    • Dnsmasq
      • 前言
      • 安装
        • 1. 基本环境
        • 2. 备份
        • 3. 配置
      • 测试
    • fail2ban
    • 防火墙 firewalld
    • 花里胡哨且实用的命令
    • 文本三剑客
    • 如何启用硬盘
    • 输入、输出重定向
    • 作业控制
    • Prometheus
    • 磁盘阵列
    • 远程同步文件
    • SSH 让你的服务器更安全
    • 守护系统 systemd
    • 用户管理
    • 查看文本内容
    • 传参 xargs

Dnsmasq

前言

一开始选择了 bind,试用后觉得配置麻烦就选择了更为轻量的 dnsmasq。

该笔记基本参考 CentOS7 安装 dnsmaqs 局域网 DNS。

安装

1. 基本环境

yum install bind-utils dnsmasq -y

2. 备份

cp /etc/dnsmasq.conf /etc/dnsmasq.conf.bak

3. 配置

在 /etc/dnsmasq.conf 中可以看到都是注释项,所以猜测清空所有再增加也可:

port=53
# 表示严格按照 resolv-file 文件中的顺序从上到下进行 DNS 解析, 直到第一个成功解析成功为止
strict-order
# 指定上游dns服务器
resolv-file=/etc/resolv.dnsmasq.conf
# 自定义的dns记录文件
addn-hosts=/etc/dnsmasq.hosts
# 设为当前服务器
listen-address=192.168.0.42
# 缓存大小
cache-size=150


# 注意该项是否正确(我在启用时网卡指向了另外一个)
interface=eth0

填写上游 DNS 服务:

vim /etc/resolv.dnsmasq.conf

# 写入
nameserver 223.5.5.5
nameserver 223.6.6.6
nameserver 114.114.114.114

填写自建的 DNS 解析:

vim /etc/dnsmasq.hosts

# 写入
192.168.0.144 test.com

将当前主机的 DNS 服务指向 dnsmasq,若重启失效那么需要对 NetworkManager 进行配置。

vim /etc/resolv.conf

nameserver 192.168.0.42

最后重启服务:

# 检查配置正确
dnsmasq --test

# 重启
systemctl restart dnsmasq

测试

切换到其他主机下:

dig @192.168.0.42 test.com

如果测试失败,可以考虑端口是否被防火墙拦截:

telnet 192.168.0.42 53
编辑文档!
上次更新:
贡献者: shanyuhai123
Prev
Linux 系统目录结构
Next
fail2ban