KVM網絡管理(橋接網絡、NAT網絡)-05

KVM網絡管理

KVM 客戶機網絡連接有兩種方式:

  • 用戶網絡(User Networking):讓虛擬機訪問主機、互聯網或本地網絡上的資源的簡單方法,但是不能從網絡或其他的客戶機訪問客戶機,性能上也需要大的調整。NAT方式。

  • 虛擬網橋(Virtual Bridge):這種方式要比用戶網絡複雜一些,但是設置好後客戶機與互聯網,客戶機與主機之間的通信都很容易。Bridge方式。

    用戶網絡(User Networking):讓虛擬機訪問主機、互聯網或本地網絡上的資源的簡單方法,但是不能從網絡或其他的客戶機訪問客戶機,性能上也需要大的調整。NAT方式。
    虛擬網橋(Virtual Bridge):這種方式要比用戶網絡複雜一些,但是設置好後客戶機與互聯網,客戶機與主機之間的通信都很容易。Bridge方式。

NAT地址轉換原理
網絡地址轉換(NAT)是一種用於訪問Internet訪問模式廣域網(WAN)的技術,用於將私有(保留)地址轉換爲合法IP地址。NAT不僅能夠有效地額抵抗外部網絡攻擊,還能夠在IP地址分配不理想,不足的時候有效,合理化的分配IP地址,從而能夠進行互聯網訪問。

在這裏插入圖片描述

Bridge方式原理
Bridge方式即虛擬網橋的網絡連接方式,是客戶機和子網裏面的機器能夠互相通信。可以使虛擬機成爲網絡中具有獨立IP的主機。

橋接網絡(也叫物理設備共享)被用作把一個物理設備複製到一臺虛擬機。網橋多用作高級設置,特別是主機多個網絡接口的情況。

在這裏插入圖片描述
如上圖,網橋的基本原理就是創建一個橋接接口br0,在物理網卡和虛擬網絡接口之間傳遞數據。

KVM創建橋接網絡

創建一個新的虛擬網卡名稱爲br0用來和真實網卡ens33進行連接

[root@localhost ~]# virsh iface-bridge ens33 br0
使用附加設備 br0 生成橋接 ens33 失敗
已啓動橋接接口 br0
##這裏將物理網卡ens33與br0進行管理,這個br0是虛擬橋接網卡,雖然會報錯但是可以不用理會
[root@localhost ~]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c290d3aac yes ens33 可以看到br0已經於ens33網卡橋接
virbr0 8000.525400702bdb yes virbr0-nic

如果執行完上條命令後出現虛擬機不能開啓混雜模式,需要以管理員權限運行vmwore虛擬機,如果是mac或者unix系統需要對vmnet網卡設置虛擬機能調用的權限,/dev/vmnet0、1、8等網卡設置其他用戶rw權限,上條命令執行完成後,如果是採用xshell或者其他遠程連接程序會卡掉,需要進入虛擬機裏面配置br0網卡dns信息,並且重啓網卡

原來的物理網卡ens33發生改變,與br0連接,並且IP地址也會跑到br0網卡上
root@localhost ~]# cat  /etc/sysconfig/network-scripts/ifcfg-ens33 
DEVICE="ens33"
ONBOOT="yes"
BRIDGE="br0"

[root@localhost ~]# cat  /etc/sysconfig/network-scripts/ifcfg-br0 
DEVICE="br0"
ONBOOT="yes"
TYPE="Bridge"
BOOTPROTO="none"
IPADDR="192.168.83.6"
NETMASK="255.255.255.0"
GATEWAY="192.168.83.2"
DNS1=223.5.5.5   #只需要添加一條dns解析信息
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
DHCPV6C="no"
STP="on"
DELAY="0"
[root@localhost ~]# systemctl  restart network
[root@localhost ~]# brctl   show  
bridge name	bridge id		STP enabled	interfaces
br0		8000.000c290d3aac	yes		ens33
virbr0		8000.525400702bdb	yes		virbr0-nic

編輯kvm虛擬機Centos7.4-01配置文件信息,講網絡接口改爲我們剛纔創建br0


-----省略部分代碼-----
    <interface type='bridge'>  #類型改爲橋接
      <mac address='52:54:00:dc:b9:6e'/>
      <source bridge='br0'/>  #網卡設備修改爲br0
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
-----省略部分代碼-----
bridge name	bridge id		STP enabled	interfaces
br0		8000.000c290d3aac	yes		ens33
virbr0		8000.525400702bdb	yes		virbr0-nic

編輯kvm虛擬機Centos7.4-01配置文件信息,講網絡接口改爲我們剛纔創建br0


-----省略部分代碼-----
    <interface type='bridge'>  #類型改爲橋接
      <mac address='52:54:00:dc:b9:6e'/>
      <source bridge='br0'/>  #網卡設備修改爲br0
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
-----省略部分代碼-----

修改完成後啓動Centos7.4-01查看
[root@localhost ~]# virsh start Centos7.4-01
域 Centos7.4-01 已開始
啓動完成後進入虛擬機可以看到dhcp分配的地址,是與虛擬機屬於同一網段的
在這裏插入圖片描述

KVM創建和使用NAT方式

NAT方式是kvm安裝後的默認方式。它支持主機與虛擬機的互訪,同時也支持虛擬機訪問互聯網,但不支持外界訪問虛擬機。
kvm想要使用NAT網絡需要虛擬機開啓路由功能

修改完成後啓動Centos7.4-01查看
[root@localhost ~]# virsh start Centos7.4-01
域 Centos7.4-01 已開始
啓動完成後進入虛擬機可以看到dhcp分配的地址,是與虛擬機屬於同一網段的
在這裏插入圖片描述

KVM創建和使用NAT方式

NAT方式是kvm安裝後的默認方式。它支持主機與虛擬機的互訪,同時也支持虛擬機訪問互聯網,但不支持外界訪問虛擬機。
kvm想要使用NAT網絡需要虛擬機開啓路由功能

[root@localhost ~]# cat /proc/sys/net/ipv4/ip_forward
1     #如果查看的值爲1表示開啓了路由功能,值要是爲0的話執行下面那條命令開啓
[root@localhost ~]# echo   1 >   /proc/sys/net/ipv4/ip_forward

克隆一臺虛擬機名稱爲Centos7.4-nat-01

[root@localhost ~]# virt-clone --auto-clone -o Centos7.4-01 -n Centos7.4-nat-01
成功克隆 'Centos7.4-nat-01'。
成功克隆 'Centos7.4-nat-01'[root@localhost ~]# virsh    net-list   `查看net網絡列表`
 名稱               狀態     自動開始  持久
----------------------------------------------------------
 default              活動     是           是

[root@localhost ~]# virsh     net-dumpxml  default  `查看default網絡詳細信息`
<network>
  <name>default</name>
  <uuid>c619d640-bdaa-4998-932e-7f70eeb4aade</uuid>
  <forward mode='nat'>
    <nat>
      <port start='1024' end='65535'/>
    </nat>
  </forward>
  <bridge name='virbr0' stp='on' delay='0'/>
  <mac address='52:54:00:70:2b:db'/>
  <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>

將克隆的虛擬機Centos7.4-nat-01網絡設置爲nat網絡

[root@localhost ~]# virsh   edit   Centos7.4-nat-01
-----省略部分代碼-----
   <interface type='network'>
      <mac address='52:54:00:26:e0:0d'/>
      <source network='default'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>      ```
-----省略部分代碼-----
[root@localhost ~]# virsh   start    Centos7.4-nat-01

在這裏插入圖片描述

發佈了16 篇原創文章 · 獲贊 6 · 訪問量 2869
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章