校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > docker部署Macvlan實現跨主機網絡通信的實現

docker部署Macvlan實現跨主機網絡通信的實現

熱門標簽:外呼系統打哪顯哪 新邵電銷機器人企業 湖北ai智能電銷機器人 新科美甲店地圖標注 蘭州ai電銷機器人招商 AI電銷機器人 源碼 江西外呼系統 高德地圖標注論壇 北海市地圖標注app

基本概念:

Macvlan工作原理:

Macvlan是Linux內核支持的網絡接口。要求的Linux內部版本是v3.9–3.19和4.0+;通過為物理網卡創建Macvlan子接口,允許一塊物理網卡擁有多個獨立的MAC地址和IP地址。虛擬出來的子接口將直接暴露在相鄰物理網絡中。從外部看來,就像是把網線隔開多股,分別接受了不同的主機上一樣;物理網卡收到包后,會根據收到包的目的MAC地址判斷這個包需要交給其中虛擬網卡。

當容器需要直連入物理網絡時,可以使用Macvlan。Macvlan本身不創建網絡,本質上首先使宿主機物理網卡工作在‘混雜模式',這樣物理網卡的MAC地址將會失效,所有二層網絡中的流量物理網卡都能收到。接下來就是在這張物理網卡上創建虛擬網卡,并為虛擬網卡指定MAC地址,實現一卡多用,在物理網絡看來,每張虛擬網卡都是一個單獨的接口。

使用Macvlan需要注意以下幾點:
  • 容器直接連接物理網絡,由物理網絡負責分配IP地址,可能的結果是物理網絡IP地址被耗盡,另一個后果是網絡性能問題,物理網絡中接入的主機變多,廣播包占比快速升高而引起的網絡性能下降問題;
  • 宿主機上的某張網上需要工作在‘混亂模式'下;
  • 前面說到,工作在混亂模式下的物理網卡,其MAC地址會失效,所以,此模式中運行的容器并不能與外網進行通信,但是不會影響宿主機與外網通信;
  • 從長遠來看bridge網絡與overlay網絡是更好的選擇,原因就是虛擬網絡應該與物理網絡隔離而不是共享。

項目環境:

兩臺docker主機:(centos7)
docker01: 172.16.1.30
docker02: 172.16.1.31

項目操作:

實例一:macvlan跨主機單網絡解決方案:

docker01:

(1)開啟ens33網卡的混雜模式,開啟網卡的多個虛擬interface(接口)

[root@sqm-docker01 ~]# ip link set ens33 promisc on
##查看網卡的狀態:
[root@sqm-docker01 ~]# ip link show ens33

(2)創建macvlan網絡:

[root@sqm-docker01 ~]# docker network create -d macvlan --subnet 172.16.100.0/24 --gateway 172.16.100.1 -o parent=ens33 mac_net1

參數解釋:
-o: 綁定在哪張網卡之上(基于ens33網卡)

(3)基于剛創建的網絡運行一個容器:

[root@sqm-docker01 ~]# docker run -itd --name box1 --ip 172.16.100.10 --network mac_net1 busybox

docker02:(與docker01相同操作)

開啟混雜模式
[root@sqm-docker02 ~]# ip link set ens33 promisc on
[root@sqm-docker02 ~]# ip link show ens33

//創建macvlan網絡
[root@sqm-docker02 ~]# docker network create -d macvlan --subnet 172.16.100.0/24 --gateway 172.16.100.1 -o parent=ens33 mac_net1
//運行一個容器:
[root@sqm-docker02 ~]# docker run -itd --name box2 --network mac_net1 --ip 172.16.100.20 busybox

(4)測試兩個主機間的兩個容器相互通信:

注意事項:

能ping通的原因是兩個容器都是基于真實的ens33網卡的,所以宿主機上的ens33網卡必須能夠相互通信。這種方式只能夠ping通ip地址,是無法ping通容器名的。

實例二:macvlan跨主機多網絡解決方案:

(1)首先查看主機內核的8021q模塊:

[root@sqm-docker01 ~]# modinfo 8021q

##如果沒有查看到該模塊,需要執行以下命令進行加載:
[root@sqm-docker01 ~]# modprobe 8021q
開啟路由轉發:
[root@sqm-docker01 ~]# echo "net.ipv4.ip_forward = 1" > /etc/sysctl.conf 
[root@sqm-docker01 ~]# sysctl -p
net.ipv4.ip_forward = 1

(2)修改網絡配置信息:

docker01:

[root@sqm-docker01 ~]# cd /etc/sysconfig/network-scripts/
[root@sqm-docker01 network-scripts]# ls


[root@sqm-docker01 network-scripts]# vim ifcfg-ens33

基于ens33網卡進行創建子網卡:

[root@sqm-docker01 network-scripts]# cp -p ifcfg-ens33 ifcfg-ens33.10 #網卡名稱自定義
[root@sqm-docker01 network-scripts]# cp -p ifcfg-ens33 ifcfg-ens33.20

-p:表示保留原有屬性(權限)

//修改ens33.10網卡:
[root@sqm-docker01 network-scripts]# vim ifcfg-ens33.10
##只保留以下選項:

//修改ens33.20網卡:
[root@sqm-docker01 network-scripts]# vim ifcfg-ens33.20 
配置與ens33.10相同,只需修改ip地址:

(3)啟動子網卡:

[root@sqm-docker01 network-scripts]# ifup ifcfg-ens33.10 
[root@sqm-docker01 network-scripts]# ifup ifcfg-ens33.20 
//查看網絡信息
[root@sqm-docker01 network-scripts]# ifconfig

(4)基于ens33.10和ens33.20創建macvlan網絡:

注意:網段不同,網絡名稱不同

[root@sqm-docker01 ~]# docker network create -d macvlan --subnet 172.16.200.0/24 --gateway 172.16.200.1 -o parent=ens33.10 mac_net10

[root@sqm-docker01 ~]# docker network create -d macvlan --subnet 172.16.210.0/24 --gateway 172.16.210.1 -o parent=ens33.20 mac_net20

(5)基于以上網絡分別運行2個容器:

[root@sqm-docker01 ~]# docker run -itd --name test1 --ip 172.16.200.10 --network mac_net10 busybox

[root@sqm-docker01 ~]# docker run -itd --name test2 --ip 172.16.210.10 --network mac_net20 busybox

部署docker02:

基本與docker01操作相同,注意網段的相同,但主機ip得不同。

#以下操作將不做解釋:

開啟路由轉發:
[root@sqm-docker01 ~]# echo "net.ipv4.ip_forward = 1" > /etc/sysctl.conf 
[root@sqm-docker01 ~]# sysctl -p
net.ipv4.ip_forward = 1
[root@sqm-docker02 network-scripts]# pwd
/etc/sysconfig/network-scripts
[root@sqm-docker02 network-scripts]# vim ifcfg-ens33 

[root@sqm-docker02 network-scripts]# cp -p ifcfg-ens33 ifcfg-ens33.10
[root@sqm-docker02 network-scripts]# cp -p ifcfg-ens33 ifcfg-ens33.20
[root@sqm-docker02 network-scripts]# vim ifcfg-ens33.10


[root@sqm-docker02 network-scripts]# vim ifcfg-ens33.20

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

[root@sqm-docker02 network-scripts]# ifup ifcfg-ens33.10 [root@sqm-docker02 network-scripts]# ifup ifcfg-ens33.20
//創建macvlan網絡:[root@sqm-docker02 ~]# docker network create -d macvlan --subnet 172.16.200.0/24 --gateway 172.16.200.1 -o parent=ens33.10 mac_net10[root@sqm-docker02 ~]# docker network create -d macvlan --subnet 172.16.210.0/24 --gateway 172.16.210.1 -o parent=ens33.20 mac_net20
//運行容器(ip地址不同):[root@sqm-docker02 ~]# docker run -itd --name test3 --network mac_net10 --ip 172.16.200.11 busybox[root@sqm-docker02 ~]# docker run -itd --name test4 --network mac_net20 --ip 172.16.210.11 busybox

//確保容器正常運行

(6)測試容器之間能夠跨主機通信:(注意:如果你是vmware環境的話,由于VMware虛擬機的原因,必須將兩臺主機默認的NAT模式修改為橋接模式才能夠正常通信)
test3與test1通信(相同網段):

test4與test2通信(相同網段):

排錯思路:如果部署完主機間無法通信的話,首先確認防火墻或iptables規則是否關閉或放行,是否禁用selinux,其次排查ens33的網卡配置文件及其子網卡內容是否修改錯誤,最后排查你創建macvlan網絡是是否網段定義錯誤,或者在運行容器是否ip地址指定不正確。

----------------------macvlan多網絡跨主機實現通信部署完畢---------------------

擴展知識點:
假設我們運行了一個t1容器,然后t2容器使用t1容器的網絡棧。

[root@sqm-docker03 ~]# docker run -itd --name  t1 busybox[root@sqm-docker03 ~]# docker exec t1 ip a

[root@sqm-docker03 ~]# docker run -it --name t2 --network container:t1 busybox

//接下來在t1容器中操作:[root@sqm-docker03 ~]# docker exec -it  t1 bin/sh


然后在t2容器中也可以看到此服務:

以上就是部署網絡棧的基本內容,自己也不是經常用到,就是為了實現其他容器能夠共享其中一個容器中的資源。

標簽:黃石 南陽 海南 大理 池州 自貢 阿克蘇 黔東

巨人網絡通訊聲明:本文標題《docker部署Macvlan實現跨主機網絡通信的實現》,本文關鍵詞  docker,部署,Macvlan,實現,跨,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《docker部署Macvlan實現跨主機網絡通信的實現》相關的同類信息!
  • 本頁收集關于docker部署Macvlan實現跨主機網絡通信的實現的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    亚洲精品视频在线| 欧美午夜精品一区| 久久久精品免费观看| 免费成人性网站| 日韩欧美色电影| 国产精品伊人色| 国产精品久久久久久久久免费樱桃| 国产精品99久久不卡二区| 日本一区二区三区免费乱视频| 国产精品123区| 亚洲色图另类专区| 在线观看视频91| 久久精品国产亚洲5555| 国产亚洲精品资源在线26u| 成人性生交大片免费看视频在线 | 国产在线乱码一区二区三区| 欧美精品一区二区久久久| 国产乱一区二区| 久久精品男人天堂av| 国产成人精品三级| 中文在线一区二区| 91久久精品国产91性色tv| 午夜精彩视频在线观看不卡| 欧美美女视频在线观看| 久久国产精品色| 亚洲欧洲www| 欧美一区二区三区日韩视频| 国产成人免费在线观看| 亚洲免费av高清| 日韩免费性生活视频播放| 成人国产精品免费观看动漫| 亚洲一区二区在线视频| 精品久久人人做人人爰| 色香色香欲天天天影视综合网| 日韩精品国产精品| 国产精品免费视频观看| 91精品国产综合久久国产大片| 国产成人免费视频一区| 五月激情综合色| 国产精品成人一区二区艾草| 日韩一级视频免费观看在线| 波多野结衣亚洲一区| 青青草成人在线观看| 亚洲人吸女人奶水| 久久精品人人做人人爽人人| 91久久一区二区| 国产iv一区二区三区| 秋霞午夜鲁丝一区二区老狼| 亚洲女同一区二区| 欧美激情综合五月色丁香| 欧美一级电影网站| 在线观看www91| hitomi一区二区三区精品| 免费在线一区观看| 亚洲一区二区在线观看视频| 国产精品丝袜一区| 精品不卡在线视频| 日韩一区二区在线播放| 欧美在线小视频| 97久久精品人人爽人人爽蜜臀| 久久国内精品自在自线400部| 亚洲午夜影视影院在线观看| 国产精品天干天干在观线| 久久久久综合网| 精品日韩在线一区| 欧美一区二区三区在线观看视频| 91麻豆免费在线观看| caoporn国产精品| 成人免费视频caoporn| 国产成人鲁色资源国产91色综| 蜜桃视频免费观看一区| 亚洲成人av一区二区| 一级精品视频在线观看宜春院| 国产精品国产三级国产| 国产精品欧美极品| 国产欧美视频一区二区| 久久久精品蜜桃| 国产欧美精品区一区二区三区| www亚洲一区| 久久五月婷婷丁香社区| 精品成人a区在线观看| 久久综合九色综合97_久久久| 欧美成人一区二区三区片免费| 日韩视频在线观看一区二区| 91精品国产手机| 日韩欧美久久久| 久久亚洲精华国产精华液 | 欧美亚洲国产一区在线观看网站| 99精品偷自拍| 欧美中文字幕一二三区视频| 91传媒视频在线播放| 欧洲视频一区二区| 欧美日韩免费电影| 欧美成人猛片aaaaaaa| 亚洲精品一区二区三区香蕉| 亚洲精品在线网站| 国产精品久久久久久久岛一牛影视 | 国产精品一二二区| 成人免费视频一区| 色婷婷精品大在线视频| 欧美视频在线一区二区三区| 欧美日韩成人一区二区| 日韩女优av电影| 国产精品三级视频| 亚洲一区在线观看视频| 蜜臀99久久精品久久久久久软件| 国产一区二区在线免费观看| fc2成人免费人成在线观看播放| 欧美性大战久久久久久久| 91精品国产综合久久久久久| 精品国产凹凸成av人导航| 国产精品欧美极品| 亚洲第一激情av| 久久99国内精品| 99久久精品免费看| 日韩一区二区高清| 国产精品美女久久久久av爽李琼| 一卡二卡三卡日韩欧美| 激情文学综合网| 久久女同精品一区二区| 国产精品66部| 国产综合久久久久久鬼色| 蜜臀av亚洲一区中文字幕| 国产白丝精品91爽爽久久| 在线一区二区观看| 久久久国产精品麻豆| 亚洲精品日日夜夜| 亚洲精品免费在线| 极品少妇一区二区三区精品视频| 欧美色男人天堂| 亚洲午夜日本在线观看| 成人在线一区二区三区| 久久久久久毛片| 国产麻豆一精品一av一免费| 日韩视频在线你懂得| 日韩精品成人一区二区在线| 91精品福利视频| 亚洲欧美乱综合| 91碰在线视频| 国产精品久久777777| 从欧美一区二区三区| 久久精品人人做人人爽人人| 国产一区二区h| 久久午夜电影网| 国产 欧美在线| 久久九九影视网| 成人精品免费看| 国产精品麻豆久久久| 成人免费毛片嘿嘿连载视频| 国产精品女人毛片| 91久久精品一区二区三| 亚洲午夜一区二区| 91精品国产手机| 久久精品国产精品青草| 精品国内二区三区| 国产91在线|亚洲| 亚洲婷婷综合久久一本伊一区 | 成人高清伦理免费影院在线观看| 久久久国产综合精品女国产盗摄| 国产激情视频一区二区在线观看 | 亚洲国产成人91porn| 777奇米成人网| 国产在线精品一区二区三区不卡 | 日韩视频免费观看高清完整版 | 国产精品毛片高清在线完整版| 不卡一区在线观看| 亚洲一二三四久久| 日韩一区二区免费在线电影| 国产一区 二区| 亚洲欧洲制服丝袜| 欧美日韩电影一区| 久久超级碰视频| 中文字幕永久在线不卡| 91成人在线精品| 日日夜夜精品免费视频| 久久久不卡网国产精品一区| thepron国产精品| 丝袜诱惑制服诱惑色一区在线观看| 日韩一区二区三区四区| 国产精品中文字幕日韩精品| 亚洲欧洲精品一区二区三区不卡| 欧美亚洲综合网| 久久狠狠亚洲综合| 亚洲乱码国产乱码精品精98午夜 | 久久99精品国产91久久来源| 中文久久乱码一区二区| 欧美色图天堂网| 国产一区二区视频在线播放| 亚洲欧洲精品天堂一级 | 国产乱人伦偷精品视频不卡| 亚洲色图视频网| 日韩视频在线你懂得| 99国产精品久久久久久久久久| 视频一区二区欧美| 久久在线观看免费| 色哟哟亚洲精品| 国产一区二区精品在线观看| 亚洲成年人网站在线观看| 久久免费看少妇高潮| 欧美日韩中文字幕精品|