返回信息流写计网课设(写一个DNS转发服务器)的时候出了一个问题
我在Ubuntu 20.04下进行开发,每次运行我的DNS程序的时候需要先停掉systemd-resolve服务,然后再把/etc/resolv.conf里面的127.0.0.53改成127.0.0.1
但是每隔一小段时间,这个文件就会被系统应用覆盖
因为这是我自己平时用的电脑,所以不忍心安装网上的方法对系统设置进行更改(以前乱搞,重装过一次系统,现在不敢了)
所以想要实现的是,让程序运行在127.0.0.53这个地址上,这样子就不用去管resolv.conf了
但是这个好像超出了我的知识范围,直觉告诉我是不可能的,
但是我还是蛮问一下,有没有类似的解决方案_(:з」∠)_
这是一条镜像帖。来源:北邮人论坛 / linux / #160042同步于 2021/5/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Linux机器人发帖
socket如何使用127.0.0.53作为服务端IP
linzhenyun
2021/5/19镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
使用 `lsof` 命令,你会发现 53 端口被 `systemd-resolved` 服务监听着:
```shell
? ~ sudo lsof -i:53
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd-r 79063 systemd-resolve 18u IPv4 1485283 0t0 UDP localhost:domain
systemd-r 79063 systemd-resolve 19u IPv4 1485284 0t0 TCP localhost:domain (LISTEN)
```
因此需要做的就是先 stop 这个 service,再 disable。这样的话下次重启/开机的时候不会自动启动。
```shell
? ~ sudo systemctl stop systemd-resolved.service
? ~ sudo systemctl disable systemd-resolved.service
```
这玩意用处不大,停掉无所谓。现在你改 `/etc/resolv.conf` 后就不会被自动修改了,53 端口也能使用了
感谢大佬
【 在 nitroethane (nitroethane) 的大作中提到: 】
: [md]
: 使用 `lsof` 命令,你会发现 53 端口被 `systemd-resolved` 服务监听着:
: ```shell
: ...................