国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

Docker 手動配置容器網絡實例詳解

2024-09-01 13:48:56
字體:
來源:轉載
供稿:網友

Docker 手動配置容器網絡

  docker容器的網絡是net命名空間與虛擬設備的結合,容器在啟動時會創建一對虛擬接口veth pair,這一對接口分別放到本地和容器中,在本地的veth會被分配類似vethxxxx的名稱并被橋接到指定網橋的上(默認為docker0),可以通過brctl show命令查看網橋上掛載的接口,在容器中的veth會從網橋獲取一個未使用地址,該veth的名稱會被更改為eth0并配置默認路由到vethxxxx,docker允許在啟動容器的時候通過--net參數指定不同的網絡類型。

       --net=bridge:默認值,橋接到默認的網橋。

       --net=host:不將容器網絡放到隔離的namespace,此時docker不會容器化容器內的網絡,這樣創建出來的容器使用的是本地的網絡,擁有完全的本地主機接口訪問權限。

       --net=contianer:name_or_id:使用一個已經存在的容器的網絡棧,共享已存在容器的ip地址和端口等網絡資源。

       --net=none:將新容器放到隔離的網絡棧中,不進行網絡配置,我們為容器配置網絡需要指定該項。

       我的環境 :操作系統---centos7,Docker版本---1.7,基礎鏡像---centos-6-x86_64.tar.gz

1. 啟動容器

[black@test ~]$ docker run -it --rm --name=mynetwork --net=none centos:latest /bin/bash

在容器中查看網絡設置,可以發現只有本地環回接口lo

[root@99abaecd79ab /]# ifconfig lo    Link encap:Local Loopback       inet addr:127.0.0.1 Mask:255.0.0.0      inet6 addr: ::1/128 Scope:Host      UP LOOPBACK RUNNING MTU:65536 Metric:1      RX packets:0 errors:0 dropped:0 overruns:0 frame:0      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0      collisions:0 txqueuelen:0       RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) 

2. 為容器創建net命名空間

[black@test ~]$ PID=$(docker inspect -f '{{.State.Pid}}' mynetwork) [black@test ~]$ sudo mkdir -p /var/run/netns [black@test ~]$ sudo ln -s /proc/$PID/ns/net /var/run/netns/$PID 

3. 創建一對veth接口A和B,綁定A到自定義的網橋br0

[black@test ~]$ sudo ip link add A type veth peer name B [black@test ~]$ sudo brctl addif br0 A [black@test ~]$ sudo ip link set A up 

4. 將B放入容器中,命名為eth0,啟動并配置ip與默認網關

[black@test ~]$ sudo ip link set B netns $PID [black@test ~]$ sudo ip netns exec $PID ip link set dev B name eth0 [black@test ~]$ sudo ip netns exec $PID ip link set eth0 up [black@test ~]$ sudo ip netns exec $PID ip addr add 10.10.10.25/24 dev eth0   //ip與br0在同一網段中 [black@test ~]$ sudo ip netns exec $PID ip route add default via 10.10.10.10.1 

在容器中查看容器的網絡設置如下

[root@affbcb8747eb /]# ifconfig                                          eth0   Link encap:Ethernet Wadded D2:27:3D:9F:E8:AA       inet addr:10.10.10.25 Bcast:0.0.0.0 Mask:255.255.255.0      inet6 addr: fe80::d027:3dff:fe9f:e8aa/64 Scope:Link      UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1      RX packets:8 errors:0 dropped:0 overruns:0 frame:0      TX packets:8 errors:0 dropped:0 overruns:0 carrier:0      collisions:0 txqueuelen:1000       RX bytes:648 (648.0 b) TX bytes:648 (648.0 b)  lo    Link encap:Local Loopback       inet addr:127.0.0.1 Mask:255.0.0.0      inet6 addr: ::1/128 Scope:Host      UP LOOPBACK RUNNING MTU:65536 Metric:1      RX packets:0 errors:0 dropped:0 overruns:0 frame:0      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0      collisions:0 txqueuelen:0       RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) 

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持,


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 柳河县| 荔波县| 兴化市| 三穗县| 南江县| 屯留县| 邮箱| 湘阴县| 南城县| 富裕县| 临洮县| 兴安县| 博客| 治多县| 资阳市| 石城县| 瑞昌市| 秦皇岛市| 洪洞县| 邻水| 眉山市| 长治县| 和龙市| 葵青区| 上思县| 苍溪县| 隆林| 拜泉县| 宁晋县| 马边| 马公市| 张掖市| 庄浪县| 清丰县| 长宁区| 桐梓县| 宁海县| 鹰潭市| 上高县| 高青县| 宁乡县|