当前位置: 首页 > news >正文

内网DNS-dnsmasq服务详解

介绍

  1. 可以做正向、反向dns解析,支持DHCP服务。也可以做内部dns服务器用.
  2. 实现功能:利用dnsmasq做dns解析服务,内网的域名解析为本机的ip地址,外网的域名通过dns解析为外网对应的地址

搭建dns服务端

本次搭建服务端的ip地址是:10.0.0.5

# 安装
yum install dnsmasq -y# 配置文件
cat > /etc/dnsmasq.conf << EOF
#指定 dnsmasq 监听的 IP 地址
listen-address=10.0.0.5,127.0.0.1#设置 DNS 缓存大小为 10000 条记录
cache-size=10000
#设置本地解析的 TTL(Time To Live)值为 600 秒
local-ttl=600#指定包含上游 DNS 服务器地址的文件位置。当 dnsmasq 接收到它不能直接回答的 DNS 请求时,它会将这些请求转发给这个文件中列出的 DNS 服务器。
resolv-file=/etc/dnsmasq-resolv.conf
#使 dnsmasq 严格按照 /etc/dnsmasq-resolv.conf 文件中列出的顺序使用 DNS 服务器。这可以确保特定的 DNS 服务器优先被使用。
strict-order#指定一个或多个附加主机文件的位置,这些文件中的条目会被添加到 dnsmasq 的解析表中,允许自定义域名与 IP 地址的映射。
addn-hosts=/etc/dnsmasq.hosts
#指定一个目录,dnsmasq 会读取该目录下的所有配置文件。
conf-dir=/etc/dnsmasq.d#启用查询日志记录功能。
log-queries
#指定日志文件的位置
log-facility=/var/log/dnsmasq.log
EOF# 配置上游 DNS 服务器地址
cat /etc/dnsmasq-resolv.conf
nameserver 223.6.6.6# 配置自定义域名与 IP 地址的映射
cat /etc/dnsmasq.hosts
10.0.0.40  eladmin.zqfstack.com
10.0.0.40  ruoyi.zqfstack.com# 创建所需目录
mkdir /etc/dnsmasq.d# 重启
systemctl restart dnsmasq
systemctl enable   dnsmasq
systemctl status  dnsmasq

注意:这里有一个目录(/etc/dnsmasq.d)我们没使用,如果需要自定义的域名很多,我们可以创建多个文件,按照项目划分进行自定义域名解析,例如:

cat /etc/dnsmasq.d/address.conf
address=/www.taobao.com/100.100.137.88
ptr-record=127.0.0.1.in-addr.arpa,www.taobao.com
address=/baidu.com/100.100.137.88
address=/saneri.com/100.100.137.88

配置客户端并测试

解析是有顺序的,所以一定要将内网dns放在前面,如果顺序不对,解析也是会出问题的

cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 10.0.0.5

测试:

ping eladmin.zqfstack.com
PING eladmin.zqfstack.com (10.0.0.40) 56(84) bytes of data.
64 bytes from eladmin.zqfstack.com (10.0.0.40): icmp_seq=1 ttl=64 time=0.105 ms
64 bytes from eladmin.zqfstack.com (10.0.0.40): icmp_seq=2 ttl=64 time=0.038 msping ruoyi.zqfstack.com
PING ruoyi.zqfstack.com (10.0.0.40) 56(84) bytes of data.
64 bytes from eladmin.zqfstack.com (10.0.0.40): icmp_seq=1 ttl=64 time=0.014 ms
64 bytes from eladmin.zqfstack.com (10.0.0.40): icmp_seq=2 ttl=64 time=0.037 ms
http://www.sczhlp.com/news/10361/

相关文章:

  • 【自学嵌入式:stm32单片机】TIM定时中断
  • 手艺融合赋能文旅元宇宙:虚实共生重构产业新生态
  • C语言数据结构《顺序表》教案
  • 数据库获得当前日期和时间
  • 【大二病也要学离散!】第三章 函数
  • QOJ5459 Goose, goose, DUCK? 题解 [ 蓝 ] [ 扫描线 ] [ 线段树 ]
  • 【日记】谈判失败(2273 字)
  • LSB隐写原理解析
  • 利用Active Directory进行攻击防御 - 实战技术与工具解析
  • 数据结构《课程导入 绪论》教案
  • Windows11正式版如何修改开机音乐的问题
  • 深度技术win10专业版电脑出现假死的问题
  • Spring boot SseEmitter 推送数据客户端乱码
  • Apache SeaTunnel 新定位!迈向多模态数据集成的统一工具
  • [完结22章]LLM应用全流程开发 全新技术+多案例实战+私有化部署
  • IP地址转换
  • Springboot+vue3 MinIO文件前端直传例子
  • 【刷题笔记】日照集训 Day3
  • GAS_Aura-The Gameplay Ability System
  • 深度解析10BASE-T1S PLCA的多节点通信效率
  • ESP32 + PCA9685(16通道 PWM 扩展模块)来驱动多个 9g 舵机
  • k8s 新版创建完 serviceaccount 后-- 不再生成 对应的--token
  • 验证码厂商对比及选型
  • debian更换NVIDIA 官方驱动
  • 经纬恒润推动汽车软件安全新生态,打造全流程质量协同新范式
  • 2025杭电多校第七场 矩形框选、伤害冷却比 个人题解 - CUC
  • 7 月 SeaTunnel 社区狂飙:新特性、强优化、贡献者满分输出
  • 在K8S中,假设一家基于整体架构的公司处理许多产品。现在,随着公司在当今规模化行业中的发展,其整体架构开始引起问题,如何看待公司从单一服务转向微服务并部署其服务容器?
  • GAS_Aura-Post Process Highlight
  • Host startup hook