我知道维尔什命令我可以创建几种类型的网络(例如“NAT 网络”),正如我们在这些 URL 中看到的那样……
KVM网络管理
KVM 默认基于 NAT 的网络(第 33 页)
问题:如何创建网络(lan_n) 其中只有客户机/虚拟机具有连接,没有出站连接,也没有主机/虚拟机管理程序连接?
笔记:与其他资源的连接将由普富思可以访问另一个网络的防火墙服务器(wan_n) 具有出站连接和其他资源。
Network layout...
[N]wan_n
↕
[I]wan_n
[V]pfsense_vm
[I]lan_n
↕
[N]lan_n
↕
.............................
↕ ↕ ↕
[V]some_vm_0 [V]some_vm_1 [V]some_vm_4
[V]some_vm_2 [V]some_vm_5
[V]some_vm_3
_ [N] - Network;
_ [I] - Network Interface;
_ [V] - Virtual Machine.
笔记:主机/虚拟机管理程序操作系统是CentOS 7。
谢谢!=D
答案1
在 KVM 上创建一个没有网关地址的新网络配置(“非常私密”或“非常孤立”)
这种类型的网络可用于非常私密或者非常孤立网络,因为无法通过此网络与虚拟化主机通信。但是,此虚拟网络接口可用于虚拟客户系统之间的通信。这适用于 IPv4 和 IPv6。但是,新的ipv6='是'必须添加才能实现来宾到来宾的 IPv6 通信。
- 检查 KVM 和 OS 中的网络状态
检查 KVM 使用的网络...
brctl show
检查 KVM 虚拟网络...
virsh net-list
检查操作系统中的网络...
ip a
- 创建没有网关地址的新网络配置
模型
read -r -d '' FILE_CONTENT << 'HEREDOC'
BEGIN
<network>
<name>[MY_NETWORK_NAME]</name>
<uuid>[MY_NETWORK_UUID]</uuid>
<bridge name='virbr[MY_NETWORK_NUMBER]' stp='on' delay='0'/>
<mac address='52:54:00:[MY_NETWORK_MAC_FINAL]'/>
</network>
END
HEREDOC
echo -n "${FILE_CONTENT:6:-3}" > '/usr/share/libvirt/networks/[MY_NETWORK_NAME].xml'
- “[MY_NETWORK_NAME]” - 小写名称,不含空格和特殊字符;
- “[MY_NETWORK_UUID]”(“uuid”是可选的)- 您可以在 URL 上生成一个新的https://www.uuidgenerator.net/version4;
- “[MY_NETWORK_NUMBER]”——我们使用“virbr”前缀来遵循现有的命名“约定”;
- “[MY_NETWORK_MAC_FINAL]”(“mac”是可选的)- 前缀“52:54:00:”始终相同,否则将发生错误“无效的多播桥 mac 地址”。您可以在 URL 处生成一个新的https://miniwebtool.com/mac-address-generator/。
例子
read -r -d '' FILE_CONTENT << 'HEREDOC'
BEGIN
<network>
<name>okd_very_private</name>
<uuid>cbc4be8a-1fc5-4e1a-8065-e12dab7d4175</uuid>
<bridge name='virbr1' stp='on' delay='0'/>
<mac address='52:54:00:CB:8A:F0'/>
</network>
END
HEREDOC
echo -n "${FILE_CONTENT:6:-3}" > '/usr/share/libvirt/networks/okd_very_private.xml'
将新的网络定义 XML 文件添加到 libvirt...
模型
virsh net-define "/usr/share/libvirt/networks/[MY_NETWORK_NAME].xml"
例子
virsh net-define "/usr/share/libvirt/networks/okd_very_private.xml"
笔记:“net-define” 是“net-create”的替代方法。当您想要一个在重启和关闭后仍能持续的持久虚拟网络,而不是使用“net-create”创建的临时虚拟网络时,请使用此选项。
启动新的网络...
模型
virsh net-start [MY_NETWORK_NAME]
例子
virsh net-start okd_very_private
要将新网络设置为每次重新启动 KVM 主机时自动启动...
模型
virsh net-autostart [MY_NETWORK_NAME]
例子
virsh net-autostart okd_very_private
提示:要查看 libvirt 中定义的特定网络的配置详细信息,请使用该命令...
模型
virsh net-dumpxml [MY_NETWORK_NAME]
例子
virsh net-dumpxml okd_very_private
。
[参考文献:https://libvirt.org/formatnetwork.html#examplesNoGateway]
特别感谢@berndbausch!=D