KVM 網路

2024-11-11 KVM KVM linux

KVM 網路

檢視網路

# 列出全部網路設定,包含未啟動的網路
❯ sudo virsh net-list --all                        
 Name      State      Autostart   Persistent
----------------------------------------------
 default   active     yes         yes
 private   inactive   no          yes
 public    active     yes         yes
  • Name: 網路介面名稱
  • State: 目前狀態
    • active: 啟動
    • inactive: 未啟動
  • Autostart: 開機時自動啟動
    • yes: 開機時自動啟動
    • no: 開機時不自動啟動
  • Persistent: 永久保存

編輯網路

virsh net-list
# 列出全部網路設定,包含未啟動的網路
virsh net-list --all
virsh net-edit $NETWORK_NAME
  • 编辑段落
<mtu size="9000"/>
<dhcp>
  <range start='192.168.122.100' end='192.168.122.254'/>
  <host mac='52:54:00:ed:3c:bc' name='winxp' ip='192.168.122.2'/>
  <host mac='52:54:00:19:1b:70' name='loki' ip='192.168.122.3'/>
  <host mac='52:54:00:b8:f1:68' name='gilLab' ip='192.168.122.4'/>
  <host mac='' name='vm1' ip=''/>
</dhcp>
  • 重起網路
sudo virsh net-destroy $NETWORK_NAME &&\
sudo virsh net-start $NETWORK_NAME

檢視網路設定

virsh net-dumpxml <network-name>

讓網路在啟動時自動啟用

sudo virsh net-autostart <network-name>

執行結果

❯ sudo virsh net-autostart private       
Network private marked as autostarted

產生 MAC

符合 KVM/QEMU 規範的 MAC 地址:

echo "52:54:00:$(openssl rand -hex 3 | sed 's/\(..\)/\1:/g; s/:$//')"

使用 openssl 命令隨機生成

openssl rand -hex 6 | sed 's/\(..\)/\1:/g; s/:$//'

參考資料

https://huataihuang.gitbooks.io/cloud-atlas/content/virtual/kvm/startup/in_action/kvm_libvirt_static_ip_for_dhcp _and_port_forwarding.html