linux 虚拟网络_macvlan原理(Linux.org)
macvlan是Linux操作系統內核提供的網絡虛擬化方案之一,更準確的說法是網卡虛擬化方案。它可以為一張物理網卡設置多個mac地址,相當于物理網卡施展了影分身之術,由一個變多個,同時要求物理網卡打開混雜模式。針對每個mac地址,都可以設置IP地址,本來是一塊物理網卡連接到交換機,現在是多塊虛擬網卡連接到交換機。macvlan應該很簡單。
1.環境準備
假設有一塊物理網卡,名稱是enp0s8,連接到網絡192.168.187.0/24網段,就在enp0s8上實驗macvlan。
2.創建macvlan
- 首先將enp0s8網卡的啟動方式由原來的dhcp改成manual,不需要再自動獲取IP地址,因為對于混雜模式下的網卡,IP地址是沒有意義的。修改/etc/network/interfaces,配置如下:
auto enp0s8
iface enp0s8 inet manual
- 創建macvlan:
ip link add link enp0s8 dev enp0s8macv.01 type macvlan ip link add link enp0s8 dev enp0s8macv.02 type macvlan ip link set enp0s8macv.01 up ip link set enp0s8macv.02 up - 手動分配IP地址:
dhclient enp0s8macv.01 dhclient enp0s8macv.02經過確認可以知道enp0s8macv.01與enp0s8macv.02都正確分配到了網段192.168.187.0/24中的地址。創建的虛擬網卡既可以給本地宿主機使用,也可以指定宿主機上創建的虛擬機。
3.macvlan作用
從以上的創建步驟可以看出,macvlan并沒有創建網絡,只是虛擬了網卡,共享了物理網卡所連接的外部網絡,它的效果與橋接模式是一樣的。網絡虛擬化的目的就是在多租戶場景,在統一的低層網絡之上,單獨為每個租戶虛擬出自己的網絡從而達到隔離的目的。macvlan既然不創建網絡,又有什么用處呢?答案是效率,它是效率最高的跨主機網絡虛擬化解決方案之一。vlan與vxlan方案中涉及到的虛擬化設備:
1.tap設備,就是虛擬機的網卡。
2.bridge設備,宿主機內的網絡。
3.vlan/vxlan設備。
而macvlan只涉及到一個虛擬設備macvlan。可以看出,macvlan方案涉及到的虛擬設備更少,數據包處理所經過的點就更少,效率就更高。macvlan會出現在一些對網絡性能要求極高的場景下.
總結
以上是生活随笔為你收集整理的linux 虚拟网络_macvlan原理(Linux.org)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SAP UI5 初学者教程之二十五 -
- 下一篇: SAP UI5 应用开发教程之二十六 -