vxlan是linux核心本身支援的一種網路虛擬化技術,是核心的乙個模組,在核心態實現封裝解封裝,構建出覆蓋網路,其實就是乙個由各宿主機上的flannel.1裝置組成的虛擬二層網路。
由於vxlan由於額外的封包解包,導致其效能較差,所以flannel就有了host-gw模式,即把宿主機當作閘道器,除了本地路由之外沒有額外開銷,效能和calico差不多,由於沒有疊加來實現報文**,這樣會導致路由表龐大。因為乙個節點對應乙個網路,也就對應一條路由條目。
host-gw雖然vxlan網路效能要強很多。,但是種方式有個缺陷:要求各物理節點必須在同乙個二層網路中。
物理節點必須在同一網段中。這樣會使得乙個網段中的主機量會非常多,萬一發乙個廣播報文就會產生干擾。
在私有雲場景下,宿主機不在同一網段是很常見的狀態,所以就不能使用host-gw了。
vxlan還有另外一種功能,vxlan也支援類似host-gw的玩法,如果兩個節點在同一網段時使用host-gw通訊,如果不在同一網段中,即 當前pod所在節點與目標pod所在節點中間有路由器,就使用vxlan這種方式,使用疊加網路。
結合了host-gw和vxlan,這就是vxlan的directrouting模式
因此flnnel的vxlan模式有兩種:
vxlan: 原生的vxlan,即擴充套件的虛擬lan
directrouting:直接路由型
net-conf.json: |}
參考:
flannel網路的VXLAN及host gw
flannel network 實現原理 flannel為每個主機提供獨立的子網,整個集群的網路資訊儲存在etcd上。對於跨主機的 目標容器的ip位址,需要從etcd獲取。先上圖,比較直觀 步驟 1 ip資料報被封裝並通過容器的eth0傳送。2 container1的eth0通過veth對與dock...
flannel網路設定
目錄 flannel網路模式 vxlan 1.vxlan 在資料報外層封裝vxlan首部,進行傳輸 2.directrouting vxlan中的host gw模式 host gw host gateway 在主機的路由表中建立到其他主機的路由條目,從而實現容器網路跨主機通訊。udp 早期linux...
利用ODL建立VxLAN網路
說明 mininet1 192.168.1.209 mininet2 192.168.1.211 odl 192.168.1.217 為三颱虛機,在同一網段,其中odl虛機安裝了opendaylight boron sr3,mininet1和mininet2都安裝了mininet 1.讓minine...