KVM的NAT虚拟网络

默认部署的KVM环境使用了一个NAT方式的虚拟网络环境,这样创建的虚拟机可以访问外网,但是外部却不能访问虚拟机的服务。

要在NAT网络提供对外服务,需要在物理主机上设置IP Forwarding,将物理主机的网络端口映射到虚拟主机的网络端口。不过,在此之前还需要确保每个虚拟机启动时获得固定的IP地址,以保证端口映射正确。

libvirt和DHCP

在NAT模式下,libvirt使用了内建的dnsmasq来提供DHCP和DNS解析,可以通过在virsh中设置固定的DHCP IP地址和虚拟机MAC地址绑定来确保每次分配给vm相同的IP地址。

首先找出vm的MAC地址

virsh dumpxml $VM_NAME | grep 'mac address'

编辑网络

virsh  net-list
virsh  net-edit  $NETWORK_NAME

这里 $NETWORK_NAME 通常是default

编辑段落


  
  
  
  

重启虚拟网络
virsh net-destroy default
virsh net-start default

在kvm宿主机的hosts中加入对应条目后,建议重启KVM宿主机。

你可能感兴趣的:(KVM的NAT虚拟网络)