溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

在Docker中利用bridge方式進(jìn)行網(wǎng)絡(luò)的隔離與通信

發(fā)布時(shí)間:2020-11-27 14:28:26 來源:億速云 閱讀:551 作者:Leah 欄目:開發(fā)技術(shù)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)在Docker中利用bridge方式進(jìn)行網(wǎng)絡(luò)的隔離與通信,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

Docker的基本網(wǎng)絡(luò)配置

在Docker中利用bridge方式進(jìn)行網(wǎng)絡(luò)的隔離與通信

當(dāng) Docker 啟動(dòng)時(shí),會(huì)自動(dòng)在主機(jī)上創(chuàng)建一個(gè) docker0 虛擬網(wǎng)橋,實(shí)際上是 Linux 的一個(gè) bridge,可以理解為一個(gè)軟件交換機(jī)。它會(huì)在掛載到它的網(wǎng)口之間進(jìn)行轉(zhuǎn)發(fā)。

同時(shí),Docker 隨機(jī)分配一個(gè)本地未占用的私有網(wǎng)段中的一個(gè)地址給 docker0 接口。比如典型的 172.17.0.1,掩碼為 255.255.0.0。此后啟動(dòng)的容器內(nèi)的網(wǎng)口也會(huì)自動(dòng)分配一個(gè)同一網(wǎng)段(172.17.0.0/16)的地址。

當(dāng)創(chuàng)建一個(gè) Docker 容器的時(shí)候,同時(shí)會(huì)創(chuàng)建了一對(duì) veth pair 接口(當(dāng)數(shù)據(jù)包發(fā)送到一個(gè)接口時(shí),另外一個(gè)接口也可以收到相同的數(shù)據(jù)包)。

這對(duì)接口一端在容器內(nèi),即 eth0;另一端在本地并被掛載到 docker0 網(wǎng)橋,名稱以 veth 開頭(例如 veth2)。通過這種方式,主機(jī)可以跟容器通信,容器之間也可以相互通信。

Docker 就創(chuàng)建了在主機(jī)和所有容器之間一個(gè)虛擬共享網(wǎng)絡(luò)。

1. Docker在iptables的filter表中的鏈

在Docker 18.05.0(2018.5)及之后的版本中,提供如下4個(gè)chain:

DOCKER

DOCKER-ISOLATION-STAGE-1

DOCKER-ISOLATION-STAGE-2

DOCKER-USER

目前,Docker默認(rèn)對(duì)宿主機(jī)的iptables設(shè)置規(guī)則完整一覽,在/etc/sysconfig/iptables文件中

##地址轉(zhuǎn)發(fā)表nat中的規(guī)則鏈及默認(rèn)
*nat
#PREROUTING規(guī)則鏈默認(rèn)策略是ACCEPT
:PREROUTING ACCEPT [0:0]
#INPUT規(guī)則鏈默認(rèn)策略是ACCEPT
:INPUT ACCEPT [0:0]
#OUTPUT規(guī)則鏈默認(rèn)策略是ACCEPT
:OUTPUT ACCEPT [4:272]
#POSTROUTING規(guī)則鏈默認(rèn)策略是ACCEPT
:POSTROUTING ACCEPT [4:272]
#DOCKER規(guī)則鏈默認(rèn)策略是ACCEPT
:DOCKER - [0:0]
 
#######################在PREROUTING規(guī)則鏈中添加的規(guī)則###########################
##-m表示使用擴(kuò)展模塊進(jìn)行數(shù)據(jù)包匹配,到達(dá)本機(jī)的數(shù)據(jù)包,如果目標(biāo)地址類型是本地局域網(wǎng),則指定到DOCKER鏈
-A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
 
#######################在OUTPUT規(guī)則鏈中添加的規(guī)則###########################
-A OUTPUT ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
 
#######################在POSTROUTING規(guī)則鏈中添加的規(guī)則###########################
##這條規(guī)則是為了使容器和外部網(wǎng)絡(luò)通信
#將源地址為192.168.0.0/20的包(也就是從Docker容器產(chǎn)生的包),并且不是從docker0網(wǎng)卡發(fā)出的
#進(jìn)行源地址轉(zhuǎn)換,轉(zhuǎn)換成主機(jī)網(wǎng)卡的地址。
-A POSTROUTING -s 192.168.0.0/20 ! -o docker0 -j MASQUERADE
 
############################在DOCKER規(guī)則鏈中添加的規(guī)則###########################
#由docker0接口輸入的數(shù)據(jù)包,返回到調(diào)用鏈;-i指定了要處理來自哪個(gè)接口的數(shù)據(jù)包
-A DOCKER -i docker0 -j RETURN
 
###############################################################################
##規(guī)則表中的鏈及默認(rèn)策略
*filter
:INPUT DROP [4:160]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [59:48132]
:DOCKER - [0:0]
:DOCKER-ISOLATION-STAGE-1 - [0:0]
:DOCKER-ISOLATION-STAGE-2 - [0:0]
:DOCKER-USER - [0:0]
 
############################在FORWARD規(guī)則鏈中添加的規(guī)則###########################
##數(shù)據(jù)包全部指定到DOCKER-USER鏈
-A FORWARD -j DOCKER-USER
##數(shù)據(jù)包全部指定到DOCKER-ISOLATION-STAGE-1鏈
-A FORWARD -j DOCKER-ISOLATION-STAGE-1
 
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
##由docker0接口輸出的數(shù)據(jù)包,指定到DOCKER鏈
-A FORWARD -o docker0 -j DOCKER
##由docker0接口輸入的數(shù)據(jù)包,且不是由docker0接口輸出的數(shù)據(jù)包,允許通過
-A FORWARD -i docker0 ! -o docker0 -j ACCEPT
##由docker0接口輸入的數(shù)據(jù)包,且由docker0接口輸出的數(shù)據(jù)包,允許通過
-A FORWARD -i docker0 -o docker0 -j ACCEPT
 
####################在DOCKER-ISOLATION-STAGE-1規(guī)則鏈中添加的規(guī)則#################
##由docker0接口輸入的數(shù)據(jù)包,且不是由docker0接口輸出的數(shù)據(jù)包,指定到DOCKER-ISOLATION-STAGE-2鏈
##也就是要處理來自docker0的數(shù)據(jù)包,但是不是由docker0輸出的數(shù)據(jù)包
-A DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2
##數(shù)據(jù)包直接返回到調(diào)用鏈
-A DOCKER-ISOLATION-STAGE-1 -j RETURN
 
####################在DOCKER-ISOLATION-STAGE-2規(guī)則鏈中添加的規(guī)則#################
##由docker0接口輸出的數(shù)據(jù)包,丟棄掉
-A DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP
##數(shù)據(jù)包直接返回到調(diào)用鏈
-A DOCKER-ISOLATION-STAGE-2 -j RETURN
 
############################在DOCKER-USER規(guī)則鏈中添加的規(guī)則###########################
##直接返回到調(diào)用鏈
-A DOCKER-USER -j RETURN

2. Docker的DOCKER鏈

僅處理從宿主機(jī)到docker0的IP數(shù)據(jù)包。

3. Docker的DOCKER-ISOLATION鏈(隔離在不同的bridge網(wǎng)絡(luò)之間的通信)

可以看到,為了隔離在不同的bridge網(wǎng)絡(luò)之間的通信,Docker提供了兩個(gè)DOCKER-ISOLATION階段實(shí)現(xiàn)。

DOCKER-ISOLATION-STAGE-1鏈過濾源地址是bridge網(wǎng)絡(luò)(默認(rèn)docker0)的數(shù)據(jù)包,匹配的數(shù)據(jù)包再進(jìn)入DOCKER-ISOLATION-STAGE-2鏈處理;

不匹配就返回到父鏈FORWARD。

在DOCKER-ISOLATION-STAGE-2鏈中,進(jìn)一步處理目的地址是bridge網(wǎng)絡(luò)(默認(rèn)是docker0)的數(shù)據(jù)包,匹配的數(shù)據(jù)包表示該數(shù)據(jù)包是從一個(gè)bridge網(wǎng)絡(luò)的網(wǎng)橋發(fā)出,到另一個(gè)bridge網(wǎng)絡(luò)的網(wǎng)橋,這樣的數(shù)據(jù)包來自其他bridge網(wǎng)絡(luò),將被直接DROP;

不匹配的數(shù)據(jù)包就返回到父鏈FORWARD繼續(xù)進(jìn)行后續(xù)處理。

4. Docker的DOCKER-USER鏈

Docker啟動(dòng)時(shí),會(huì)加載DOCKER鏈和DOCKER-ISOLATION(現(xiàn)在是DOCKER-ISOLATION-STAGE-1)鏈中的過濾規(guī)則,并使之生效。絕對(duì)禁止修改這里的過濾規(guī)則。

如果用戶要補(bǔ)充Docker的過濾規(guī)則,強(qiáng)烈建議追加到DOCKER-USER鏈。

DOCKER-USER鏈中的過濾規(guī)則,將先于Docker默認(rèn)創(chuàng)建的規(guī)則被加載(在上面的規(guī)則一覽中,DOCKER_USER鏈被最早APPEND到規(guī)則鏈中),從而能夠覆蓋Docker在DOCKER鏈和DOCKER-ISOLATION鏈中的默認(rèn)過濾規(guī)則。

例如,Docker啟動(dòng)后,默認(rèn)任何外部source IP都被允許轉(zhuǎn)發(fā),從而能夠從該source IP連接到宿主機(jī)上的任何Docker容器實(shí)例。如果只允許一個(gè)指定的IP訪問容器實(shí)例,可以插入路由規(guī)則到DOCKER-USER鏈中,從而能夠在DOCKER鏈之前被加載。

示例如下:

#只允許192.168.1.1訪問容器
iptables -A DOCKER-USER -i docker0 ! -s 192.168.1.1 -j DROP
#只允許192.168.1.0/24網(wǎng)段中的IP訪問容器
iptables -A DOCKER-USER -i docker0 ! -s 192.168.1.0/24 -j DROP
#只允許192.168.1.1-192.168.1.3網(wǎng)段中的IP訪問容器(需要借助于iprange模塊)
iptables -A DOCKER-USER -m iprange -i docker0 ! --src-range 192.168.1.1-192.168.1.3 -j DROP

5. Docker在iptables的nat表中的規(guī)則

為了能夠從容器中訪問其他Docker宿主機(jī),Docker需要在iptables的nat表中的POSTROUTING鏈中插入轉(zhuǎn)發(fā)規(guī)則,示例如下:

iptables -t nat -A POSTROUTING -s 172.18.0.0/16 -j MASQUERADE

上述配置,還進(jìn)一步限制了容器實(shí)例的IP范圍,這是為了區(qū)分Docker宿主機(jī)上有多個(gè)bridge網(wǎng)絡(luò)的情況。

6. Docker中禁止修改iptables過濾表

dockerd啟動(dòng)時(shí),參數(shù)--iptables默認(rèn)為true,表示允許修改iptables路由表。

要禁用該功能,可以有兩個(gè)選擇:

設(shè)置啟動(dòng)參數(shù)--iptables=false

修改配置文件/etc/docker/daemon.json,設(shè)置"iptables": "false";然后執(zhí)行systemctl reload docker重新加載

補(bǔ)充知識(shí):docker網(wǎng)絡(luò)模式之 default bridge模式

上文提到,docker的網(wǎng)絡(luò)模式一共有五種,birdge 、host 、overlay、nacvlan、none、Network plugin 六種模式,這里主要介紹網(wǎng)橋(bridge)默認(rèn)橋接模式。

一、簡(jiǎn)介

在網(wǎng)絡(luò)概念中,橋接網(wǎng)絡(luò)是一種鏈路層設(shè)備,它在網(wǎng)絡(luò)段之間轉(zhuǎn)發(fā)通信。網(wǎng)橋是運(yùn)行在主機(jī)內(nèi)核上的一個(gè)硬件設(shè)備或者軟件設(shè)備。在docker中,橋接網(wǎng)絡(luò)是使用軟件橋接,連接到同一橋接網(wǎng)絡(luò)上的容器直接可相互通信,而且是全端口的,而與未連接到該橋接網(wǎng)絡(luò)的容器直接隔離,如此,橋接網(wǎng)絡(luò)管理同一主機(jī)上所有容器的連接與隔離。docker的橋接驅(qū)動(dòng)程序自動(dòng)在主機(jī)上安裝規(guī)則,同一網(wǎng)橋上的網(wǎng)絡(luò)可相互通信,不同網(wǎng)橋網(wǎng)絡(luò)容器相互隔離。

橋接網(wǎng)絡(luò)適用于同一主機(jī)docker daemon生成的容器,對(duì)于不同主機(jī)daocker daemon的容器間交互,要么使用操作系統(tǒng)級(jí)的路由操作,要么使用overlay網(wǎng)絡(luò)驅(qū)動(dòng)。

當(dāng)我們啟動(dòng)docker時(shí),systemctl start docker, 一個(gè)默認(rèn)的橋接網(wǎng)絡(luò)(birbr0)將自動(dòng)被創(chuàng)建,連接docker daemon 與宿主機(jī)器,同時(shí)創(chuàng)建一個(gè)網(wǎng)絡(luò)docker0,后續(xù)生產(chǎn)的容器將自動(dòng)連接到該橋接網(wǎng)絡(luò)(docker0)上。我們可查看本地網(wǎng)橋 , 每創(chuàng)建一個(gè)容器,將新建一個(gè)橋接,連接容器與默認(rèn)的橋接網(wǎng)絡(luò)。

[root@localhost hadoop]# brctl show
bridge name   bridge id        STP enabled   interfaces
docker0     8000.0242b47b550d    no
virbr0     8000.52540092a4f4    yes       virbr0-nic
[root@localhost hadoop]#

網(wǎng)橋 virbr0 連接docker0與宿主機(jī)器,在網(wǎng)橋上創(chuàng)建了接口virbr0-nic,該接口接收docker0網(wǎng)絡(luò)的數(shù)據(jù)。每生成一個(gè)容器,在docker0上新建一個(gè)接口,并且docker0的地址被設(shè)置成容器的網(wǎng)關(guān)。

[root@localhost hadoop]# docker run --rm -tdi nvidia/cuda:9.0-base 
[root@localhost hadoop]# docker ps
CONTAINER ID    IMAGE         COMMAND       CREATED       STATUS       PORTS        NAMES
9f9c2b80062f    nvidia/cuda:9.0-base  "/bin/bash"     15 seconds ago   Up 14 seconds              quizzical_mcnulty
[root@localhost hadoop]# brctl show
bridge name   bridge id        STP enabled   interfaces
docker0     8000.0242b47b550d    no       vethabef17b
virbr0     8000.52540092a4f4    yes       virbr0-nic
[root@localhost hadoop]#

查看本地網(wǎng)絡(luò) 信息 ifconfig -a

[root@localhost hadoop]# ifconfig -a
docker0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
    inet 192.168.0.1 netmask 255.255.240.0 broadcast 192.168.15.255
    inet6 fe80::42:b4ff:fe7b:550d prefixlen 64 scopeid 0x20<link>
    ether 02:42:b4:7b:55:0d txqueuelen 0 (Ethernet)
    RX packets 37018 bytes 2626776 (2.5 MiB)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 46634 bytes 89269512 (85.1 MiB)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
 
eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
    inet 192.168.252.130 netmask 255.255.255.0 broadcast 192.168.252.255
    ether 00:25:90:e5:7f:20 txqueuelen 1000 (Ethernet)
    RX packets 14326014 bytes 17040043512 (15.8 GiB)
    RX errors 0 dropped 34 overruns 0 frame 0
    TX packets 10096394 bytes 3038002364 (2.8 GiB)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
    device memory 0xfb120000-fb13ffff 
 
eth2: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
    ether 00:25:90:e5:7f:21 txqueuelen 1000 (Ethernet)
    RX packets 0 bytes 0 (0.0 B)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 0 bytes 0 (0.0 B)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
    device memory 0xfb100000-fb11ffff 
 
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
    inet 127.0.0.1 netmask 255.0.0.0
    inet6 ::1 prefixlen 128 scopeid 0x10<host>
    loop txqueuelen 0 (Local Loopback)
    RX packets 3304 bytes 6908445 (6.5 MiB)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 3304 bytes 6908445 (6.5 MiB)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
 
oray_vnc: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1200
    inet 172.1.225.211 netmask 255.0.0.0 broadcast 172.255.255.255
    ether 00:25:d2:e1:01:00 txqueuelen 500 (Ethernet)
    RX packets 1944668 bytes 227190815 (216.6 MiB)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 2092320 bytes 2232228527 (2.0 GiB)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
 
vethabef17b: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
    inet6 fe80::e47d:4eff:fe87:39d3 prefixlen 64 scopeid 0x20<link>
    ether e6:7d:4e:87:39:d3 txqueuelen 0 (Ethernet)
    RX packets 0 bytes 0 (0.0 B)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 8 bytes 648 (648.0 B)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
 
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
    inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
    ether 52:54:00:92:a4:f4 txqueuelen 0 (Ethernet)
    RX packets 0 bytes 0 (0.0 B)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 0 bytes 0 (0.0 B)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
 
virbr0-nic: flags=4098<BROADCAST,MULTICAST> mtu 1500
    ether 52:54:00:92:a4:f4 txqueuelen 500 (Ethernet)
    RX packets 0 bytes 0 (0.0 B)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 0 bytes 0 (0.0 B)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

docker 結(jié)合網(wǎng)橋與路由規(guī)則,設(shè)置同一宿主機(jī)器內(nèi),各容器間交互,docker 容器橋接網(wǎng)絡(luò)驅(qū)動(dòng)下,網(wǎng)絡(luò)接入方式如下圖所示:

在Docker中利用bridge方式進(jìn)行網(wǎng)絡(luò)的隔離與通信

如果啟動(dòng)容器時(shí),指定了端口映射,將內(nèi)部端口 80 映射到主機(jī)端口8080,也可0.0.0.0:8080方式,指定網(wǎng)卡,如下

docker run --rm -ti -p 8080:80 nvidia/cuda:9.0-base

然后查看路由表,

iptables -t nat -vnL

可看到增加了路由轉(zhuǎn)發(fā)規(guī)則:

[root@localhost hadoop]# iptables -t nat -vnL
Chain PREROUTING (policy ACCEPT 55 packets, 2470 bytes)
 pkts bytes target   prot opt in   out   source        destination     
 161K 8056K PREROUTING_direct all -- *   *    0.0.0.0/0      0.0.0.0/0      
 161K 8056K PREROUTING_ZONES_SOURCE all -- *   *    0.0.0.0/0      0.0.0.0/0      
 161K 8056K PREROUTING_ZONES all -- *   *    0.0.0.0/0      0.0.0.0/0      
  0   0 DOCKER   all -- *   *    0.0.0.0/0      0.0.0.0/0      ADDRTYPE match dst-type LOCAL
 
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target   prot opt in   out   source        destination     
 
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target   prot opt in   out   source        destination     
 3442 258K OUTPUT_direct all -- *   *    0.0.0.0/0      0.0.0.0/0      
  0   0 DOCKER   all -- *   *    0.0.0.0/0      !127.0.0.0/8     ADDRTYPE match dst-type LOCAL
 
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target   prot opt in   out   source        destination     
  0   0 MASQUERADE all -- *   !docker0 192.168.0.0/20    0.0.0.0/0      
  0   0 RETURN   all -- *   *    192.168.122.0/24   224.0.0.0/24    
  0   0 RETURN   all -- *   *    192.168.122.0/24   255.255.255.255   
  0   0 MASQUERADE tcp -- *   *    192.168.122.0/24  !192.168.122.0/24   masq ports: 1024-65535
  0   0 MASQUERADE udp -- *   *    192.168.122.0/24  !192.168.122.0/24   masq ports: 1024-65535
  0   0 MASQUERADE all -- *   *    192.168.122.0/24  !192.168.122.0/24  
 3442 258K POSTROUTING_direct all -- *   *    0.0.0.0/0      0.0.0.0/0      
 3442 258K POSTROUTING_ZONES_SOURCE all -- *   *    0.0.0.0/0      0.0.0.0/0      
 3442 258K POSTROUTING_ZONES all -- *   *    0.0.0.0/0      0.0.0.0/0      
  0   0 MASQUERADE tcp -- *   *    192.168.0.3     192.168.0.3     tcp dpt:80
 
Chain DOCKER (2 references)
 pkts bytes target   prot opt in   out   source        destination     
  0   0 RETURN   all -- docker0 *    0.0.0.0/0      0.0.0.0/0      
  0   0 DNAT    tcp -- !docker0 *    0.0.0.0/0      0.0.0.0/0      tcp dpt:8080 to:192.168.0.3:80

默認(rèn)的端口類型為 TCP。

二、容器間訪問配置

首先啟動(dòng)兩個(gè)容器,然后進(jìn)入到容器內(nèi),查看個(gè)容器IP信息,

[root@localhost hadoop]# docker ps
CONTAINER ID    IMAGE         COMMAND       CREATED       STATUS       PORTS         NAMES
462751a70444    nvidia/cuda:9.0-base  "/bin/bash"     17 minutes ago   Up 17 minutes    0.0.0.0:8080->80/tcp  sad_heyrovsky
9f9c2b80062f    nvidia/cuda:9.0-base  "/bin/bash"     41 minutes ago   Up 41 minutes               quizzical_mcnulty
[root@localhost hadoop]#

我這里啟動(dòng)兩個(gè)容器,然后調(diào)用 docker inspect 容器ID 查看容器IP

docker inspect -f {{.NetworkSettings.IPAddress}} 容器ID

我們這兩個(gè)容器 為 192.168.0.2 192.168.0.3

進(jìn)入其中的一個(gè)容器, ping 另外一臺(tái)機(jī)器,會(huì)發(fā)現(xiàn),僅僅只能采用地址模式才能ping的通 ping 192.168.0.3,

docker exec -ti 9f9c2b80062f /bin/bash

如果采用在/etc/hosts內(nèi)追加 別名, 然后ping 名字,發(fā)現(xiàn)無法ping通。

192.168.0.3 node1

上述就是小編為大家分享的在Docker中利用bridge方式進(jìn)行網(wǎng)絡(luò)的隔離與通信了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI