微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

kvm虚拟化网卡、virbr0、网段修改

KVM认安装好后,会有一个virbr0,该网卡一般只做为物理机和虚拟机之间nat使用。其认使用的网段是192.168.122.0/24网段,这就造成对应的内部虚拟机有一个在192.168.122.0/24段的IP。而有时这并不符合我们的要求,我们可以修改该网段的地址,当然也可以删除或禁用该网卡,改用其他网卡。

1、查看IP信息

[root@localhost ~]# ifconfig virbr0
virbr0: flags=4099<UP,broADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:2f:c8:44  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

2、查看网络情况

[root@localhost ~]# virsh net-list
 名称               状态     自动开始  持久
----------------------------------------------------------
 default              活动     是           是

3、查看当前的网段配置

4、修改并启用

通过上面的net-edit命令打开后,我们修改对应的网段为172.25.0.0/24,并将对应的DHCP段的地址也修改掉。可以重启服务器生效,也可以通过下面的命令生效

[root@5201351 ~]# virsh net-destroy default    //重启libvirtd服务后会恢复
[root@5201351 ~]# virsh net-undefine default   //彻底删除,重启系统后也不会恢复

恢复virbr0的方法 

1、其实上面的做法,其实就是删除/var/lib/libvirt/network/default.xml文件

     恢复的方法,我们需要从另一台kvm宿主机上把default.xml文件复制过来,并将下面的标签对及标签去掉。

<!--
WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE
OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:
  virsh net-edit default
or other application using the libvirt API.
-->

<network>
  <name>default</name>
  <uuid>c8fcbb0a-a512-434b-a791-fcdd7d9a5fd8</uuid>
  <forward mode='nat'/>
  <bridge name='virbr0' stp='on' delay='0'/>
  <mac address='52:54:00:cc:20:74'/>
  <ip address='192.168.122.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.122.2' end='192.168.122.254'/>
    </dhcp>
  </ip>
</network>

2、从一个xml文件定义default网络,执行如下命令:

[root@5201351 ~]# virsh net-define /var/lib/libvirt/network/default.xml   //从一个default.xml文件定义(但不开始)一个网络

3、设置virbr0自动启动,执行如下命令:

[root@5201351 ~]# virsh net-start default           //开始一个(以前定义的default)不活跃的网络,执行后ifconfig可见virbr0
[root@5201351 ~]# virsh net-autostart default       //执行后Autostart外会变成yes

demo 

[root@localhost ~]# virsh net-destroy  default
网络 default 被删除
[root@localhost ~]# virsh net-start default
网络 default 已启用
[root@localhost ~]# ifconfig virbr0
virbr0: flags=4099<UP,MULTICAST>  mtu 1500
        inet 172.25.0.1  netmask 255.255.255.0  broadcast 172.25.0.255
        ether 52:54:00:2f:c8:44  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

destroy之前,建议先通过net-dumpxml将配置导出。

5、其他

新增网卡也是一样的道理,与网段相关的命令如下:

virsh # help network
 Networking (help keyword 'network'):
    net-autostart                  autostart a network
    net-create                     create a network from an XML file
    net-define                     define an inactive persistent virtual network or modify an existing persistent one from an XML file
    net-destroy                    destroy (stop) a network
    net-dhcp-leases                print lease info for a given network
    net-dumpxml                    network @R_425_4045@ion in XML
    net-edit                       edit XML configuration for a network
    net-event                      Network Events
    net-info                       network @R_425_4045@ion
    net-list                       list networks
    net-name                       convert a network UUID to network name
    net-start                      start a (prevIoUsly defined) inactive network
    net-undefine                   undefine a persistent network
    net-update                     update parts of an existing network's configuration
    net-uuid                       convert a network name to network UUID

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐