是否可以通过 libvirt 中的 DHCP 为客户虚拟机设置默认网关?
我有以下配置
<ip address='192.168.123.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.123.10' end='192.168.123.254'/>
<host mac="00:16:3e:45:e2:ed" ip="192.168.123.10"/>
<host mac="00:16:3e:53:a9:1a" ip="192.168.123.11"/>
...
</dhcp>
</ip>
现在,最好以某种方式**gateway**
向客户虚拟机添加如下内容:
<ip address='192.168.123.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.123.10' end='192.168.123.254'/>
<host mac="00:16:3e:45:e2:ed" ip="192.168.123.10" **gateway=192.168.123.1**/>
<host mac="00:16:3e:53:a9:1a" ip="192.168.123.11" **gateway=192.168.123.1**/>
...
</dhcp>
</ip>
我该怎么做呢?我只发现 这来源,说这是不可能的。但是,这是 2016 年的。有什么变化吗?或者我可以使用其他解决方案吗?
答案1
默认情况下,libvirt DHCP“服务器”是 libvirt 客户端的网关。如果您想指定不同的设置,则不能使用 libvirt 的内置 NAT。您需要创建一个自定义虚拟网络(可能使用),brctl
并在该接口上运行 DHCP 服务,以分发您想要的任何自定义 DHCP 租约。
答案2
我没有要评论的要点,但是当您问“我可以使用其他解决方案吗?”时,我会问为什么不能在 Vhost 上启动一个基本的 DHCP 服务器并让它分发您的默认路由?