DNS 的 LXD 代理

DNS 的 LXD 代理

我在 LXD 实例中设置了一个绑定服务器,并尝试将所有 DNS 查询从主机转发到此实例。我尝试了以下操作:

sudo lxc config device add bind dnsdevicetcp proxy listen=tcp:0.0.0.0:53 connect=tcp:bind:53

但 DNS 主要是一个 UDP 服务,当我尝试这样的操作时:

sudo lxc config device add bind dnsdeviceudp proxy listen=udp:0.0.0.0:53 connect=udp:bind:53

我会收到一个错误:

Error: Proxy device doesn't support the connection type: udp

我如何正确转发查询?


主机:Ubuntu Server 18.04

无虚拟化

LXC/LXD 版本:3.0.3

答案1

您正在使用 LXD 3.0.x,它不支持UDP 代理设备。在后来的版本(我认为是 LXD 3.4)中已经添加了对此类代理设备的支持。

因此,我建议升级到 LXD 的 snap 包,具体操作如下:

sudo snap install lxd
sudo lxd.migrate

这样,您将获得 LXD 3.23(目前最新版本),它支持 UDP 代理设备。

请注意,即使没有 LXD 代理设备,您仍然可以使用 转发网络流量iptables。但是,这是一个更复杂的过程,因为您需要正确设置命令,然后使其在每次重启时在系统上自动运行。

相关内容