kvm网络管理
一、qemu-kvm支持的网络1.虚拟机的网络模式基于NAT(Network Address Translation)的虚拟网络基于网桥(Bridge)的虚拟网络用户自定义的隔离的虚拟网络直接分配网络设备(包括VT-d和SR-IOV)...
一、qemu-kvm支持的网络
1.虚拟机的网络模式
基于NAT(Network Address Translation)的虚拟网络
基于网桥(Bridge)的虚拟网络
用户自定义的隔离的虚拟网络
直接分配网络设备(包括VT-d和SR-IOV)
2.虚拟机的网卡:
RTL8139、e1000、.....
virtio
二、virsh命令查看网卡
virsh net-list
virsh net-info default
virsh net-dumpxml default
三、基于NAT的虚拟网络
1.KVM安装时默认的网络配置
2.默认宿主机会有一个虚拟网卡virbr0,其实是一个虚拟交换机
ifconfig virbr0
3.会绑定一个网卡virbr0-nic
brctl show virbr0
4.查看iptables的nat表,可以看到做了SNAT
iptables -t nat -L
5.可以看到从virbr0接口进来的DNS报文和DHCP报文是允许的
iptables -nvL
6.当有虚拟机启动,如果采用的是默认NAT模式,那么virbr0交换机下就会增加接口,可以看 到有2个虚拟接口,代表有2个虚拟机接到了这个交换机上
brctl show virbr0
7.以通过virsh命令查看虚拟机的网卡情况
virsh domiflist testvm01
virsh domif-getlink testvm02 vnet0
virsh domifstat testvm02 vnet0
8.向虚拟机添加虚拟机网络
可以通过xml文档添加:
<interface type='network'>
<mac address='52:54:00:aa:18:d1'/>
<source network='default'/> //网络模式
<model type='virtio'/> //网卡类型
<address type='pci' domain='0x0000' bus='0x00' slot='0x03'
function='0x0'/>
</interface>
9. 候主机就变成了一个路由器,可以看到路由功能已经打开
cat /proc/sys/net/ipv4/ip_forward
注意 如果是0 那是因为ip_forward没有开启
启动ip_forward
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
四、基于网桥的虚拟网络
1.Redhat/CentOS配置网桥的常用方法:
nmcli:
1.添加网桥
nmcli connection add con-name virbr1 type bridge ifname virbr1
2./桥接物理网卡
nmcli connection add type bridge-slave con-name virbr1 ifname virbr1 master virbr1
3.激活连接
nmcli connection up virbr1
4.验证
ping真实主机
ping虚拟主机
2. brctl (需要安装bridge-utils包)
1.创建网桥
brctl addbr br10
2.连接网桥
brctl addif br10 ens34
3.brctl命令对网桥的配置需要以文件形式保存下来,这样系统再次启动后所有配置仍能生效。(修改配置文件达到连接网桥的功能)
1.复制网卡配置文件
cp ifcfg-ens33 ifcfg-virbr1
2.编写两个网卡配置文件
ens33网卡配置
TYPE="Ethernet"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
BRIDGE=virbr1
virbr1网卡配置
TYPE="Bridge"
BOOTPROTO="static"
NAME="virbr1"
DEVICE="virbr1"
ONBOOT="yes"
IPADDR=192.174.1.20
GATAWEY=192.174.1.2
DNS1=114.114.114.114
3.重新启动网络
systemctl restart network
4..在虚拟主机上附加网桥卡 (如果想要连通外网 这一步用哪种方式都得使用)
virsh attach-interface testvm01 bridge virbr1 --mode virtio --current (立即生效不过在此重启就消失了)
virsh attach-interface testvm01 bridge virbr1 --model virtio --config (永久生效 因为写入配置文件了)
五、用户自定义的隔离的虚拟网络
逻辑视图:
命令行添加网络:
下次启动生效
virsh attach-interface domain --type bridge --source br1 --model virtio --config
立即生效
virsh attach-interface domain --type bridge --source br1 --model virtio --current
为了让每次开机都生效,新生成一次配置文件替换原来的配置文件
virsh dumpxml domain > domain.xml
更多推荐
所有评论(0)