使用macvlan實現容器的跨主機通信

使用環境:

兩臺運行docker的服務器
A機器網段:192.168.86.61
B機器網段:192.168.86.62
運行的容器需裝有ping指令,

實驗參數解釋:

-d macvlan 指定創建網絡驅動類型
--subnet= 指定子網范圍
-gateway 指定網關地址
-o parent=eth0 指定宿主機物理接口(父接口)
macvlan_net 創建子網指定其網絡名稱

實驗一:A B機器的容器可以互通,無法與宿主機互通,無法上外網,只能與同vlan中容器通信【一個macvlan只能綁定一個物理接口】

操作步驟一,

A機器操作:


## 創建一個新的網絡,指定其網絡驅動類型 ,指定子網和網關,指定父接口,并賦名
docker network create -d macvlan --subnet=172.18.1.0/24 --gateway=172.18.1.1 -o parent=eth0 macvlan_net  
## 啟動一個可用ping命令的容器,指定網絡模式,指定靜態ip
docker run -itd --name test-1 --net macvlan_net --ip=172.18.1.10 centos:7

B機器操作:

docker network create -d macvlan --subnet=172.18.1.0/24 --gateway=172.18.1.1 -o parent=eth0 macvlan_net docker run -itd --name test-1 --net macvlan_net --ip=172.18.1.10 centos:7

測試A B

A機器操作
docker exec -it test-1 ping baidu.com
docker exec -it test-1 ping 172.18.1.20
docker exec -it test-1 ping 192.168.86.62
B機器操作
docker exec -it test-2 ping 172.18.1.10
docker exec -it test-2 ping 192.168.86.61
docker exec -it test-2 ping baidu.com

實驗結果:可以看到兩個容器之間可以互相通信。但無法和外網及宿主機通信。

[root@mongodb-1 ~]# docker exec -it test-1 ping baidu.com
PING baidu.com (182.61.201.211) 56(84) bytes of data.
From e450a1930ae1 (172.18.1.10) icmp_seq=1 Destination Host Unreachable
From e450a1930ae1 (172.18.1.10) icmp_seq=2 Destination Host Unreachable
From e450a1930ae1 (172.18.1.10) icmp_seq=3 Destination Host Unreachable
------------------------------------------------
[root@mongodb-1 ~]# docker exec -it test-1 ping 172.18.1.20
PING 172.18.1.20 (172.18.1.20) 56(84) bytes of data.
64 bytes from 172.18.1.20: icmp_seq=1 ttl=64 time=2.24 ms
64 bytes from 172.18.1.20: icmp_seq=2 ttl=64 time=1.91 ms
------------------------------------------------
[root@mongodb-1 ~]# docker exec -it test-1 ping 192.168.86.62
PING 192.168.86.62 (192.168.86.62) 56(84) bytes of data.
From 172.18.1.10 icmp_seq=1 Destination Host Unreachable
From 172.18.1.10 icmp_seq=2 Destination Host Unreachable

清理環境

docker rm -f test-1
docker rm -f test-2
docker network rm macvlan_net

實驗二,容器和同網段其他設備互通和宿主機不互通

設置macvlan子網和宿主機完全同網段,容器和同網段其他設備互通,但是無法和宿主機互通(走的是本地的路由器

A機器操作

docker network create -d macvlan --subnet=192.168.86.0/24 --gateway=192.168.86.2 -o parent=eth0 macvlan_host_netdocker run -itd --name tset-1 --net macvlan_host_net --ip=192.168.86.110 centos:7

B機器操作

docker network create -d macvlan --subnet=192.168.86.0/24 --gateway=192.168.86.2 -o parent=eth0 macvlan_host_netdocker run -itd --name tset-1 --net macvlan_host_net --ip=192.168.86.111 centos:7

測試

A機器操作
docker exec -it test-1 ping baidu.com
docker exec -it test-1 ping 192.168.86.111
docker exec -it test-1 ping 192.168.86.62
B機器操作
docker exec -it test-2 ping 192.168.86.110
docker exec -it test-2 ping 192.168.86.61
docker exec -it test-2 ping baidu.com

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/88768.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/88768.shtml
英文地址,請注明出處:http://en.pswp.cn/web/88768.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深度學習_全連接神經網絡

1.什么是神經網絡神經網絡中信息只向一個方向移動,即從輸入節點向前移動,通過隱藏節點,再向輸出節點移 動,網絡中沒有循環或者環。其中的基本構件是: 輸入層:即輸入x的那一層 輸出層:即輸出y的那…

OpenLayers使用

初學ol,實現了高德地圖不同圖層的切換、交互性地圖飛行以及加載本地JSON數據。說一下不同圖層切換的想法:1.對于標準地圖和衛星地圖:二者最初便掛載到map上,兩個圖層是疊加顯示的;當點擊按鈕時,其實是使用 …

day4--上傳圖片、視頻

1. 分布式文件系統 1.1 什么是分布式文件系統 文件系統是負責管理和存儲文件的系統軟件,操作系統通過文件系統提供的接口去存取文件,用戶通過操作系統訪問磁盤上的文件。 下圖指示了文件系統所處的位置: 常見的文件系統:FAT16/FA…

極矢量與軸矢量

物理量分為標量和矢量,矢量又分為極矢量和軸矢量。 矢量是既有大小又有方向并按平行四邊形法則相加的量。矢量有極矢量和軸矢量兩種,其間的區別是在鏡像反射變換下遵循不同的變換規律,許多物理量都是矢量,同樣,其中也有極矢量和軸矢量的區分,在力學中,例…

文章發布易優CMS(Eyoucms)網站技巧

為了更快的上手數據采集及發布到易優CMS(eyoucms)網站,特地總結了些新手常常會遇到的操作問題與技巧,如下: 免費易優CMS采集發布插件下載,兼容火車頭、八爪魚、簡數采集等 目錄 1. 發布到易優CMS指定欄目 2. 發布文章到易優CM…

INA226 數據手冊解讀

INA226是一款數字電流檢測放大器,配備I2C和SMBus兼容接口。該器件可提供數字電流、電壓以及功率讀數,可靈活配置測量分辨率,并具備連續運行與觸發操作模式。該芯片通常由一個單獨的電源供電,電壓范圍為 2.7V 至 5.5V引腳說明??引…

Linux 中替換sed

以下是關于 sed(Stream Editor)的深度詳解和日常高頻使用場景,結合實用示例說明:一、sed 核心概念 流式編輯器:逐行處理文本,不直接修改源文件(除非使用 -i 選項)正則支持&#xff1…

ADB 調試日志全攻略:如何開啟與關閉 `ADB_TRACE` 日志

ADB 調試日志全攻略:如何開啟與關閉 ADB_TRACE 日志 ADB(Android Debug Bridge)是 Android 開發的核心工具,但在排查問題時,默認日志可能不夠詳細。通過設置環境變量 ADB_TRACE,可以開啟 全量調試日志&…

實現druid數據源密碼加密

生成加密密碼集成了druid鏈接池的,可以實現數據源密碼加密。加密方式如下構建單元測試,并輸入密碼即可生成加密密碼以及加密公鑰Test public void testPwd() throws Exception {String password "123456";String[] arr com.alibaba.druid.fi…

【TCP/IP】20. 因特網安全

20. 因特網安全20. 因特網安全20.1 安全威脅20.2 安全服務20.3 基本安全技術20.3.1 密碼技術20.3.2 報文鑒別技術20.3.3 身份認證技術20.3.4 數字簽名技術20.3.5 虛擬專用網(VPN)技術20.3.6 防火墻技術20.3.7 防病毒技術20.4 IP 層安全20.5 傳輸層安全20…

數據結構之位圖和布隆過濾器

系列文章目錄 數據結構之ArrayList_arraylist o(1) o(n)-CSDN博客 數據結構之LinkedList-CSDN博客 數據結構之棧_棧有什么方法-CSDN博客 數據結構之隊列-CSDN博客 數據結構之二叉樹-CSDN博客 數據結構之優先級隊列-CSDN博客 常見的排序方法-CSDN博客 數據結構之Map和Se…

Web攻防-PHP反序列化魔術方法觸發條件POP鏈構造變量屬性修改黑白盒角度

知識點: 1.WEB攻防-PHP反序列化-序列化和反序列化 2.WEB攻防-PHP反序列化-常見魔術方法觸發規則 3.WEB攻防-PHP反序列化-反序列化漏洞產生原因 4.WEB攻防-PHP反序列化-黑白盒&POP鏈構造 一、演示案例-WEB攻防-PHP反序列化-序列化和反序列化 什么是反序列化操作…

C# VB.NET多進程-管道通信,命名管道(Named Pipes)

要向已運行的進程發送特定命令(如/exit),而不是啟動新進程,需要使用進程間通信(IPC)機制。以下是幾種常見的實現方法:一、使用命名管道(Named Pipes)如果ABC.EXE支持通過…

C++ 右值引用 (Rvalue References)

右值引用是C11引入的革命性特性,它徹底改變了C中資源管理和參數傳遞的方式。下面我將從多個維度深入講解右值引用。一、核心概念1. 值類別(Value Categories)lvalue (左值): 有標識符、可取地址的表達式int x 10; // x是左值 int* p &x; // 可以取地址rvalue…

反激變換器設計全流程(一)——電路拓撲及工作流程

一、電路拓撲原理 拓撲結構概述 開關反激電源采用反激式拓撲結構,主要由開關管(通常為 MOSFET)、變壓器、輸出整流二極管、輸出濾波電容以及控制電路等組成。其基本工作原理是通過開關管的周期性開關動作,將輸入直流電壓轉換為高…

uniapp語音播報天氣預報微信小程序

1.產品展示2.頁面功能(1)點擊上方按鈕實現語音播報4天天氣情況。3.uniapp代碼<template><view class"container"><view class"header"><text class"place">地址:{{city}}</text><text class"time"&g…

Pycharm 報錯 Environment location directory is not empty 如何解決

好長時間不看不寫代碼了&#xff0c;人也跟著犯糊涂。今天在Pycharm 導入虛擬環境時&#xff0c;一直報錯&#xff1a;“Environment location directory is not empty”&#xff0c;在網上百度很多很多方法都無法解決&#xff0c;直到我翻出我之前自己寫的導入虛擬環境的詳細過…

React強大且靈活hooks庫——ahooks入門實踐之場景類(scene)hook詳解

什么是 ahooks&#xff1f; ahooks 是一個 React Hooks 庫&#xff0c;提供了大量實用的自定義 hooks&#xff0c;幫助開發者更高效地構建 React 應用。其中場景類 hooks 是 ahooks 的一個重要分類&#xff0c;專門針對特定業務場景提供解決方案。 安裝 ahooks npm install …

大模型之Langchain篇(二)——RAG

寫在前面 跟著樓蘭老師學習【LangChain教程】2025吃透LangChain框架快速上手與深度實戰&#xff0c;全程干貨無廢話&#xff0c;三天學完&#xff0c;讓你少走百分之99彎路&#xff01;_嗶哩嗶哩_bilibili 計算相似度 一般用的余弦相似度&#xff0c;這里只是演示計算。 fr…

深入理解圖像二值化:從靜態圖像到視頻流實時處理

一、引言&#xff1a;圖像分析&#xff0c;從“黑與白”開始在計算機視覺任務中&#xff0c;**圖像二值化&#xff08;Image Binarization&#xff09;**是最基礎也是最關鍵的圖像預處理技術之一。它通過將灰度圖像中每個像素轉換為兩個離散值&#xff08;通常是0和255&#xf…