无法在 ubuntu 18.04 上 运行 多个 dnsmasq dhcp 服务器

Unable to run multiple dnsmasq dhcp servers on ubuntu 18.04

我已经为 USB 以太网和无线接口创建了一个新的网络命名空间。

我 运行 一个接口上的 DNSMASQ dhcp 服务器
sudo dnsmasq --port 5353 --interface wlp2s0 -F 123.12.1.101,123.12.1.200,24h
这就像一个魅力。

然后我想在另一个接口上设置另一个 DNSMASQ dhcp 服务器:
sudo dnsmasq --port 5454 --interface enx65ad574sa -F 123.12.1.101,123.12.1.200,24h
但这只是报告 dnsmasq: failed to bind DHCP server socket: Address already in use.

我可以设置多个 dnsmasq dhcp 服务器,如果我 运行 命名空间外的 dnsmasq,但在命名空间内,我只能 运行ning 一次。

如果我创建配置文件:

interface=wlp2s0
dhcp-range=wlp2s0,123.12.1.101,123.12.1.200,255.255.255.0,24h
interface=enx65ad574saaw
dhcp-range=enx65ad574saaw,192.168.0.101,192.168.0.200,255.255.255.0,24h
listen-address=::1,127.0.0.1,192.168.0.1,123.12.1.1

它在命名空间内的两个接口上也工作得很好...那有什么区别呢?我需要从命令行动态地 运行 这个,所以我不能使用配置文件。

我最终创建了 2 个单独的 dnsmasq 配置文件,它们都在同一个接口上设置了 dhcp 服务,然后 运行 在各自的网络命名空间中同时进行配置 - 这意味着添加无线接口时到网络命名空间,dnsmasq 已经在接口上充当 dhcp 服务器。

显然,设置和启动 2 个 dnsmasq,它们有自己的配置但两者具有相同的接口,不会相互干扰或破坏,并且工作非常无缝(至少当它们在单独的网络名称空间中启动时) .