Ubuntu使用dnsmasq自建dns服务

ubuntu22.04安装dnsmasq最详细易懂 准确的来说,不是安装,因为默认ubuntu22版本自带的有dnsmasq,所以我们不用下载了,直接使用即可,否则就会产生冲突,这块吃了大亏。 阅读详情
AI摘要

本文介绍了如何在Ubuntu20.04上安装并配置dnsmasq服务,解决因端口冲突导致的服务启动失败问题,并实现自定义域名的局域网访问。

前言

服务上自定义了一些域名,当有用户在局域网中能够通过自定义域名访问到这些服务。

环境

  • Ubuntu 20.04
  • dnsmasq

操作

安装dnsmasq

sudo apt update
sudo apt install dnsmasq

安装好之后,查看一下服务状态

sudo service dnsmasq status

发现服务启动失败

● dnsmasq.service - dnsmasq - A lightweight DHCP and caching DNS server
     Loaded: loaded (/lib/systemd/system/dnsmasq.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Sat 2022-01-29 09:05:45 UTC; 5s ago
    Process: 149548 ExecStartPre=/usr/sbin/dnsmasq --test (code=exited, status=0/SUCCESS)
    Process: 149549 ExecStart=/etc/init.d/dnsmasq systemd-exec (code=exited, status=2)

Jan 29 09:05:45 ubuntu systemd[1]: Starting dnsmasq - A lightweight DHCP and caching DNS server...
Jan 29 09:05:45 ubuntu dnsmasq[149548]: dnsmasq: syntax check OK.
Jan 29 09:05:45 ubuntu dnsmasq[149549]: dnsmasq: failed to create listening socket for port 53: Address already in use
Jan 29 09:05:45 ubuntu dnsmasq[149549]: failed to create listening socket for port 53: Address already in use
Jan 29 09:05:45 ubuntu systemd[1]: dnsmasq.service: Control process exited, code=exited, status=2/INVALIDARGUMENT
Jan 29 09:05:45 ubuntu dnsmasq[149549]: FAILED to start up
Jan 29 09:05:45 ubuntu systemd[1]: dnsmasq.service: Failed with result 'exit-code'.
Jan 29 09:05:45 ubuntu systemd[1]: Failed to start dnsmasq - A lightweight DHCP and caching DNS server.

检查 systemd-resolved 服务状态,发现是启动的

sudo service systemd-resolved status
● systemd-resolved.service - Network Name Resolution
     Loaded: loaded (/lib/systemd/system/systemd-resolved.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2022-01-29 09:03:56 UTC; 4min 42s ago
       Docs: man:systemd-resolved.service(8)
             https://www.freedesktop.org/wiki/Software/systemd/resolved
             https://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers
             https://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients
   Main PID: 149486 (systemd-resolve)
     Status: "Processing requests..."
      Tasks: 1 (limit: 5814)
     Memory: 7.1M
     CGroup: /system.slice/systemd-resolved.service
             └─149486 /lib/systemd/systemd-resolved

Jan 29 09:03:55 ubuntu systemd[1]: Starting Network Name Resolution...
Jan 29 09:03:56 ubuntu systemd-resolved[149486]: Positive Trust Anchors:
Jan 29 09:03:56 ubuntu systemd-resolved[149486]: . IN DS 20326 8 2 e06d44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d
Jan 29 09:03:56 ubuntu systemd-resolved[149486]: Negative trust anchors: 10.in-addr.arpa 16.172.in-addr.arpa 17.172.in-addr.arpa 18.172.in-addr.arpa 19.172.in-addr.arpa 20.172.in-addr.arpa 21.172.in-addr.arpa>
Jan 29 09:03:56 ubuntu systemd-resolved[149486]: Using system hostname 'ubuntu'.
Jan 29 09:03:56 ubuntu systemd[1]: Started Network Name Resolution.

这时候,选择停止 system-resolved 服务

sudo service systemd-resolved stop

再次启动 dnsmasq 服务

sudo service systemd-resolved start

查看 dnsmasq 服务状态

● systemd-resolved.service - Network Name Resolution
     Loaded: loaded (/lib/systemd/system/systemd-resolved.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2022-01-29 09:13:11 UTC; 3s ago
       Docs: man:systemd-resolved.service(8)
             https://www.freedesktop.org/wiki/Software/systemd/resolved
             https://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers
             https://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients
   Main PID: 149674 (systemd-resolve)
     Status: "Processing requests..."
      Tasks: 1 (limit: 5814)
     Memory: 4.3M
     CGroup: /system.slice/systemd-resolved.service
             └─149674 /lib/systemd/systemd-resolved

Jan 29 09:13:11 ubuntu systemd[1]: Starting Network Name Resolution...
Jan 29 09:13:11 ubuntu systemd-resolved[149674]: Positive Trust Anchors:
Jan 29 09:13:11 ubuntu systemd-resolved[149674]: . IN DS 20326 8 2 e06d44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d
Jan 29 09:13:11 ubuntu systemd-resolved[149674]: Negative trust anchors: 10.in-addr.arpa 16.172.in-addr.arpa 17.172.in-addr.arpa 18.172.in-addr.arpa 19.172.in-addr.arpa 20.172.in-addr.arpa 21.172.in-addr.arpa>
Jan 29 09:13:11 ubuntu systemd-resolved[149674]: Using system hostname 'ubuntu'.
Jan 29 09:13:11 ubuntu systemd[1]: Started Network Name Resolution.

配置 dnsmasq

创建文件 diy.dns(这个名字随便起),并写入配置

sudo tee /etc/dnsmasq.d/diy.dns <<- 'EOF'
# 完整的域名才向上游服务器查找,如果仅仅是主机名仅查找hosts文件
domain-needed
# 指定不提供 DHCP 或 TFTP 服务的接口,仅提供 DNS 服务。
no-dhcp-interface=eth0
# 如果反向查找的是私有地址例如192.168.X.X,仅从 hosts 文件查找,不再转发到上游服务器
bogus-priv
# 缓存条数,默认为150条,cache-size=0 禁用缓存
cache-size=2000
# 指定 resolv-file 文件路径,默认/etc/resolv.conf
resolv-file=/etc/resolv.dnsmasq.conf
EOF

创建文件 /etc/resolv.dnsmasq.conf(名字可以自定义,只需要和上面的 resolve-file 配置一致就好),并写入配置

sudo tee /etc/resolv.dnsmasq.conf <<- 'EOF'
nameserver 8.8.8.8
nameserver 114.114.114.114
EOF

配置好之后,重启服务

sudo service dnsmasq restart

检查服务是否可用

在 /etc/hosts 中自定义一个服务,并重启 dnsmasq

echo "127.0.0.1 test.domain.com" | sudo tee -a /etc/hosts
sudo service dnsmasq restart

使用 dig 命令查看服务是否正常

# 这里的 192.168.137.128 是 dnsmasq 所在服务器的地址
dig @192.168.137.128 test.domain.com

结果如下,成功解析出 test.domain.com 的 ip 就是 127.0.0.1

; <<>> DiG 9.16.1-Ubuntu <<>> @192.168.137.128 test.domain.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60222
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;test.domain.com.               IN      A

;; ANSWER SECTION:
test.domain.com.        0       IN      A       127.0.0.1

;; Query time: 0 msec
;; SERVER: 192.168.137.128#53(192.168.137.128)
;; WHEN: Sat Jan 29 09:29:20 UTC 2022
;; MSG SIZE  rcvd: 60

最后

搞起来搞起来

Ubuntu 24.04 LTS下dnsmasq配置全攻略:从基础安装到高级DNS负载均衡 本文详细介绍了在Ubuntu 24.04 LTS系统上配置dnsmasq的全过程,从基础安装到高级DNS负载均衡。涵盖dnsmasq的核心配置、性能调优、安全设置以及与Nginx的UDP/TCP负载均衡集成,为企业内部网络和开发环境提供高效的DNS解析解决方案。 阅读详情

相关推荐

Ubuntu下使用dnsmasq搭建本地DNS缓存服务器指南

DNS(域名系统)是互联网的核心基础设施,负责将域名转换为IP地址。传统的DNS查询需要经过递归查询过程,可能受到网络延迟和DNS污染的影响。通过搭建本地DNS缓存服务器,可以实现DNS查询结果的本地缓存,显著提升解析速度并增强网络可靠性。dnsmasq作为轻量级DNS转发器,以其低资源占用和简单配置著称,特别适合作为本地网络缓存解决方案。在Ubuntu系统中,通过合理配置dnsmasq的cache-size参数和上游DNS服务器,可以实现50%以上的外部DNS查询减少。该技术方案不仅适用于解决域名注册商暂

weixin_30325971的博客 390

ubuntu18安装dnsmasq实现局域网内域名解析

正文 准备一台机子充当dns服务器 1 dnsmasq安装 在dns服务器上安装dnsmasq sudo apt-get -y install dnsmasq Created symlink /etc/systemd/system/multi-user.target.wants/dnsmasq.service → /lib/systemd/system/dnsmasq.service. Job for dnsmasq.service failed because the control process

kkae8643150的专栏 3753

从零搭建DNS服务器:dnsmasq实战指南与内网解析配置

DNS(域名系统)是互联网的核心基础设施,负责将人类可读的域名转换为机器可识别的IP地址,其工作原理基于分布式数据库查询。理解DNS解析流程、缓存机制和记录类型,对于优化网络性能、提升访问速度至关重要。在工程实践中,自建DNS服务器能有效实现内网服务便捷访问、开发环境域名映射,并可通过缓存加速和域名过滤提升安全性与效率。针对内网解析和网络加速等常见场景,轻量级工具dnsmasq以其配置简单、资源占用低的优势成为理想选择。本文将以dnsmasq为例,详细演示如何在Ubuntu系统上搭建本地DNS服务器,涵盖核

weixin_30892763的博客 542

Ubuntu使用dnsmasq作本地DNS缓存

Ubuntu使用dnsmasq作本地DNS缓存 1.安装dnsmasq apt-get install dnsmasq 2.修改/etc/resolv.conf 文件 重启服务都会将该文件内容改为nameserver 127.0.0.1 关闭服务会将文件内容改回来 vim /etc/resolv.conf #将原有内容注释,然后添加以下内容 nameserver 127.0.0.1 3.在/etc目录下新建resolv.dnsmasq文件。 文件的内容为DNS服务器的地址,是真正的DNS服务器 vim

weixin_45692576的博客 1325

Ubuntu 24.04上如何用dnsmasq搭建轻量级DNS服务器?5分钟搞定内网解析

本文详细介绍了在Ubuntu 24.04上使用dnsmasq快速搭建轻量级DNS服务器的步骤,帮助用户5分钟内完成内网解析配置。dnsmasq以其轻量、易配置和高效的特点成为内网DNS解决方案的首选,适用于中小型网络环境。文章还提供了高级配置技巧和常见问题解决方案,助力用户轻松管理内网DNS服务。

transformer2023的博客 512

中兴微方案ONU之 DNS Service (dnsmasq)功能测试指导

Dnsmasq为小型网络提供网络基础设施:DNS,DHCP,路由器通告和网络引导。 它被设计为轻量级且占用空间小,适用于资源受限的路由器和防火墙。 它还被广泛用于智能手机和便携式热点的共享,并支持虚拟化框架中的虚拟网络。 支持的平台包括Linux,Android,* BSD和Mac OS X. Dnsmasq包含在大多数Linux发行版以及FreeBSD,OpenBSD和NetBSD的端口系统中。...

Shelly的博客 1804

如何在Ubuntu 20.04上使用Dnsmasq设置本地DNS解析器?

Dnsmasq是 “DNS masquerade的缩写”,是一款简单、轻量级、易于使用的DNS转发器,用于小型网络。它可以配置为DNS缓存和DHCP服务器,支持IPv4和IPv6协议。当它收到任何DNS查询时,它会从它的缓存中回答这些查询或转发到不同的DNS服务器。 Dnsmasq由三个子系统组成。 DNS子系统:用于缓存不同类型的记录,包括A、AAAA、CNAME和PTR。 DHCP子系统:它支持DHCPv4、DHCPv6、BOOTP和PXE。 路由器广告子系统:它为IPv6主机提供基本的自动配置。它可以

A5数据 5358

Ubuntu配置DNS

Ubuntu配置DNS,设置Ubuntu DNS缓存 1. 安装dnsmasq: # 安装dnsmasq的软件包 [linuxidc@linuxidc-Ubuntu ~] $ sudo apt-get install "dnsmasq" 2.设定dnsmasq接管本机的DNS解析请求: # 修改dnsmasq的配置文件 [xport@ubuntu ~] $ sudo gedit /etc/dnsmasq.conf

Dnsmasq-ubuntu简单Dns解析

Dnsmasq相对bind或windows dns,算是比较轻量级的服务了。适用于规模比较小的测试开发环境或SOHO办公等。 搭建Dnsmasq主要提供两方面的服务 域名解析服务:增加A记录,自定义本地解析 缓存服务:提高访问速度 1、安装 apt-get install dnsmasq 2、配置 vim /etc/dnsmasq.conf listen-address=10.10...

Gun&rose 3014

图像加密与解密(附matlab代码)

详细介绍了三种图像加密解密原理,并基于matlab开发了一套相应系统。

2440

Delta并联机械手-Codesys实现以及正解逆解研究

由于Codesys的Robotics模块有Delta并联机械手的运动模型,因此借助Codesys的机械手运动模型,研究自己的正解逆解算法。

weixin_42386991的博客 5565

在ubuntu14版本上使用dnsmasq配置自定义的简易DNS服务

现在的UBUNTU桌面发行版已经自带了dnsmasq,如何再配置自己的DNS配置? UBUNTU桌面版中的dnsmasq 叠床架屋?——启用dnsmasq服务 简单的DNS配置 参考 UBUNTU桌面版中的dnsmasq 不记得从哪个版本开始,大概是13.04以后,UBUNTU的网络设置工具会自带一下dnsmasq工具,用于适应各种不同网卡的DNS配置。可...

aihuang1872的博客 411

WGS-84 ECEF ENU 坐标系学习记录

地球坐标系固定在地球上而随地球一起在空间做公转和自转运动,因此地球上任一固定点在地球坐标系的坐标就不会由于地球旋转而变化。地心地固直角坐标系和大地坐标系都属于这种坐标系。 一、 几种坐标系 地心地固直角坐标系(ECEF)坐标系 其原点为地球的质心,x轴延伸通过本初子午线(0度经度)和赤道(0deglatitude)的交点。 z轴延伸通过的北极(即,与地球旋转轴重合)。 y轴完成右手坐标系,穿...

YYshuangshuang的博客 1万+

dnsmasq dns缓存_将Dnsmasq安装为缓存Dns服务器

dnsmasq dns缓存We have a lot of computer in our network. Our network speed is not too much. Sometimes especially in mornings our internet connection slows down. How can solve this with some dns related ...

cunjiu9486的博客 823

Kylin-Desktop-V10-SP1-General-Release-2303-X86_64-海光版(hygon c86)安装与配置指南

本文提供了在国产海光C86处理器平台上安装与配置Kylin Desktop V10 SP1操作系统的详细指南。内容涵盖从下载专用镜像、制作启动盘、BIOS关键设置、磁盘分区方案,到系统安装后的驱动优化、必备软件安装及常见故障排除,旨在帮助用户顺利完成hygon c86平台的系统部署与优化。

tree的博客 1370

BSD盲区检测系统性能要求及试验方法

盲区监测系统BSD通过安装在车辆后方的两颗毫米波雷达实时监测驾驶员视野盲区,当发现视野盲区内出现其它道路使用者时,通过左右后视镜上的警示灯向驾驶员发出报警。

未知艺术家的博客 2359

networkmanager中使用dnsmasq做为dns cache

networkmanager中的dns配置 root@ubuntu:~# cat /etc/NetworkManager/NetworkManager.conf [main] autoconnect-retries-default=1 dns=dnsmasq no-auto-default=eth0 [device] wifi.scan-rand-mac-address=no [logging] level=INFO 首先保证NetworkManager中的配置,dns设置为dnsmasq,这个参数

2904

从 SAP GUI 走向 SAP Fiori:一套面向 SAP S/4HANA 的用户迁移实战方法论

SAP S/4HANA转型中,用户从SAP GUI迁移到Fiori的难点在于业务价值的重构而非简单的界面替换。Fiori的核心价值在于角色化、实时洞察和智能决策,而非完全替代GUI。成功迁移需分阶段推进:先展示关键角色的价值,建立统一入口,再逐步提高Fiori占比。让用户参与设计比后期培训更重要,需通过具体场景(如采购优先级管理)展示效率提升。迁移策略应平衡新旧界面优势,让Fiori成为业务价值触达的主要方式,而非强制替换。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 236

ubuntu安装dnsmasq 做dns服务器

本文介绍在ubuntn22.04上安装dnsmasq用做自定义域名服务器,可以在公网上使用,dns域名服务器,dnsmasq

weixin_42833423的博客 1235

【Qt】QtCreator远程部署、调试程序

1)QtCreator 工具–> 选项 --> 设备 --> 添加2)设备设置向导选择–> Generic Linux Device --> 开启向导3)填写“标识配置的名称”(随便写)、设备IP、用户名 --> 下一步4)选择配对秘密文件,第一次配对,可以不填写,点击“下一步”5)点击“完成”6)设备添加成功,需要再配置SSH端口号、用户名、密码等7)保存SSH登陆密码:验证类型选择默认“Default”–> “创建新密钥”–> “Test”

郭老二 5193

mabl:AI原生测试自动化平台的基础使用

mabl是一个基于人工智能和机器学习的云原生测试自动化平台。它通过使用先进的技术,如机器学习,自动创建和执行测试,自动分析测试结果,并根据需求的变化自动适配和维护测试。这样的自动化过程极大地提高了软件测试的效率和准确性。mabl的口号是 “You write code, mabl tests”,意味着开发者只需关注编写代码,而测试工作则可以交给mabl来完成。mabl的平台支持多种测试类型,包括 Web、App、Api、可访问性和性能测试,使得团队能够更快速、更有信心地发布软件。

blues_C的博客 3657

搭建DNS服务器dnsmasq

公司内部DNS搭建 基本功能: 静态解析公司内部域名的访问;如:公司内网的一些环境,如:ftp服务器,版本服务器,论坛,内部搭建的各种服务,不对外开放。 一、DNS服务简介 1、DNS服务简介 DNS(Domain Name System)域名系统。 目前提供网络服务的应用使用唯一的32位的IP地址来标识,但是由于数字比较复杂、难以记忆,因此产生了域名系统(DNS),通过域名系统,可以使用...

Liuqz2009的专栏 1827

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

dnsmasq服务

DNSmasq简介 DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。它服务那些只在本地适用的域名,这些域名是不会在全球的DNS服务器中出现的。DHCP服务器和DNS服务器结合,并且允许DHCP分配的地址能在DNS中正常解析,而这些DHCP分配的地址和相关命令可以配置到每台主机中,也可以配置到一台核心设备中(比如路由器),D

lfdanding的专栏 9647

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

ubuntu小技巧27--基于dnsmasq快速搭建局域网dns服务器

ubuntu小技巧27--基于dnsmasq快速搭建局域网dns服务器 1 介绍 2搭建dns服务器 2.1 搭建步骤 2.2 测试 3 注意事项 4 说明 1 介绍 dnsmasq是一个轻量级的DNS、TFTP、PXE、路由器通告和DHCP服务器。它旨在为局域网提供耦合的DNS和DHCP服务。通过dnsmasq,我们可以在局域网或个人虚拟机之间快速实现一个dns服务。 本文基于dnsmasq快速实现了一个dns服务,使PC和各个虚拟机之间能够直接通过域名来访问。 2搭建dns服务器 2.1 搭建步骤 1

脚步不能达到的地方,眼光可以达到;眼光不能达到的地方,精神可以飞到 2030

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

(DNS)dnsmasq部署DNS

转自:https://www.hi-linux.com/posts/30947.html Dnsmasq提供DNS缓存和DHCP服务、Tftp服务功能。作为域名解析服务器(DNS),Dnsmasq可以通过缓存DNS请求来提高对访问过的网址的连接速度。作为DHCP服务器,Dnsmasq可以为局域网电脑提供内网ip地址和路由。DNS和DHCP两个功能可以同时或分别单独实现。Dns...

anxuan3201的博客 675
上一篇: Docker容器IP访问容器服务
下一篇: Docker设置DNS
IMJCW
博客等级 码龄10年 13粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值