linux 53端口占用的原因

打印 上一主题 下一主题

主题 818|帖子 818|积分 2454

解析 Linux 下 53 端口占用的现象

在 Linux 系统中,端口 53 往往是与域名解析服务(DNS)相关的。本文将详细介绍一个与端口 53 相关的情景,以及如何使用命令行工具来解析和理解这一现象。
现象

用户可能会遇到类似以下的信息:
  1. systemd-r 20245 systemd-resolve   13u  IPv4 216305      0t0  UDP localhost:domain
  2. systemd-r 20245 systemd-resolve   14u  IPv4 216306      0t0  TCP localhost:domain (LISTEN)
复制代码
这两行输出显示了一个名为 systemd-resolve 的进程监听本地的 DNS 端口,其中一个是通过 UDP 协议,另一个是通过 TCP 协议。
分析

UDP 连接

第一行的 UDP 连接解释如下:

  • 进程 systemd-resolve 的文件描述符(File Descriptor)为 13。
  • 这是一个 UDP 协议的连接。
  • 该连接是 IPv4 地址(IPv4 216305)。
  • 该连接位于 localhost 上的 DNS 端口。
TCP 监听

第二行的 TCP 监听解释如下:

  • 进程 systemd-resolve 的文件描述符为 14。
  • 这是一个 TCP 协议的监听(LISTEN)。
  • 该监听也是在 IPv4 地址上(IPv4 216306)。
  • 该监听位于 localhost 上的 DNS 端口。
服务解释

这些信息表明了系统中正在运行 DNS 解析服务。具体来说,systemd-resolve 进程通过 UDP 和 TCP 协议监听 localhost 的 DNS 端口。UDP 通常用于较简单的 DNS 查询,而 TCP 则用于处理较大的数据传输或复杂的查询。
解决方案

查看端口占用情况,看看 53 端口是不是被 systemd-resolved 占用了。
sudo netstat -nultp
如果 53 端口确定被 systemd-resolved 占用了,则可以根据下面给出的方法解决。
1、先停用 systemd-resolved 服务。
sudo systemctl stop systemd-resolved
2、编辑 /etc/systemd/resolved.conf 文件,按 “i” 键进入编辑模式。
sudo vi /etc/systemd/resolved.conf
3、换下面说明更改,然后按一下 “esc” 键,再输入 “:wq”(不要输入引号),回车保存即可。
  1. [Resolve]
  2. DNS=223.5.5.5         #取消注释,增加dns
  3. #FallbackDNS=
  4. #Domains=
  5. #LLMNR=no
  6. #MulticastDNS=no
  7. #DNSSEC=no
  8. #DNSOverTLS=no
  9. #Cache=no-negative
  10. DNSStubListener=no    #取消注释,把yes改为no
  11. #ReadEtcHosts=yes
复制代码
4、最后运行下面命令即可。
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
结论

端口 53 的占用通常是 DNS 服务的正常表现,负责解析域名为相应的 IP 地址。在 Linux 系统中,systemd-resolve 进程负责管理 DNS 解析任务。如果系统中有其他 DNS 服务(如 BIND 或 dnsmasq),它们也可能占用端口 53。
通过理解这些信息,用户可以更好地监控系统上的 DNS 活动,并在需要时进行适当的配置或调整。
希望这篇博文帮助你更深入地了解 Linux 下端口 53 的占用情况。如果有其他相关问题,欢迎提出。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

不到断气不罢休

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表