一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

『中級(jí)篇』 Linux網(wǎng)絡(luò)命名空間(25) – IT人故事會(huì)

 boyjiangkt727t 2019-04-30

   docker底層技術(shù),非常重要的關(guān)于namespace,network的namespace看看到底是怎么回事。

源碼下載
  • https://github.com/limingios/docker.git 里面的No.2

  • 通過(guò)vagrant 啟動(dòng)2個(gè)node

#共享插件需要的vbox需要
vagrant plugin install vagrant-vbguest
vagrant up

  • 創(chuàng)建容器,演示network-namespace

shell命令的方式,循環(huán)一小時(shí)執(zhí)行一次

vagrant ssh docker-node1
sudo service docker restart
sudo docker run -d --name test1 busybox /bin/sh -c "while true; do sleep 3600;done"

sudo docker run -d --name test2 busybox /bin/sh -c "while true; do sleep 3600;done"

啟動(dòng)了2個(gè)容器,test1,test2,進(jìn)入這2個(gè)容器查看各自的ip地址

sudo docker exec -it test1 /bin/sh
ip a
#test1的網(wǎng)絡(luò)ip是172.17.0.2 

其實(shí)這塊就是一個(gè)網(wǎng)絡(luò)命名空間

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
5: eth0@if6: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue
    link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0
       valid_lft forever preferred_lft forever
sudo docker exec -it test2 /bin/sh
ip a
#test1的網(wǎng)絡(luò)ip是172.17.0.3 

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
7: eth0@if8: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue
    link/ether 02:42:ac:11:00:03 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.3/16 brd 172.17.255.255 scope global eth0
       valid_lft forever preferred_lft forever
#在test2上ping下test1的namespace發(fā)現(xiàn)一個(gè)情況,可以ping通
ping 172.17.0.2

  • 發(fā)現(xiàn)空間之前是獨(dú)立的,容器內(nèi)的網(wǎng)絡(luò)命名空間和容器外不同,容器和容器之前的網(wǎng)絡(luò)命名空間也是相對(duì)獨(dú)立的。

exit
ip a

了解命令
  • 查看networknamespace列表

sudo ip netns list
  • 刪除networknamespace

sudo ip netns delete 名稱
  • 添加networknamespace

sudo ip netns add 名稱
創(chuàng)建linux的networknamespace。
sudo ip netns list
sudo ip netns add test3
sudo ip netns list
sudo ip netns delete test3
sudo ip netns list
sudo ip netns add test1
sudo ip netns add test2
sudo ip netns list

sudo ip netns exec test1 ip a

在test1里面執(zhí)行ip a 這個(gè)操作,lo這個(gè)回管口沒(méi)有ip地址,而且現(xiàn)在的狀態(tài)是DOWN

#
sudo ip netns exec test1 ip link set dev lo up
sudo ip netns exec test1 ip a

想讓test1的lo,狀態(tài)變成UP,結(jié)果發(fā)現(xiàn)UNKNOWN,因?yàn)槎丝谑切枰呻p才可以UP起來(lái)的,也就是說(shuō)需要一對(duì)才可以u(píng)p起來(lái)。

#####做個(gè)實(shí)驗(yàn),按照下面這個(gè)圖

讓test1 和test2 鏈接起來(lái),類似網(wǎng)絡(luò),現(xiàn)在本身test1 和test2 已經(jīng)有自己的網(wǎng)口了,但是還需要一根網(wǎng)線,領(lǐng)一個(gè)口插進(jìn)去,成對(duì)出現(xiàn)完成test1和test2的互通。

Veth將2個(gè)口鏈接起來(lái),創(chuàng)建一對(duì)接口,讓如namespace里面,配置ip地址

創(chuàng)建veth 說(shuō)白了就是創(chuàng)建一根網(wǎng)線,有2個(gè)頭但是在一根線上 veth-test1 和veth-test2

創(chuàng)建 veth-test1 和 veth-test2

sudo ip link add veth-test1 type veth peer name veth-test2
sudo ip link 

image.png

將 veth-test1 添加到test1中,veth-test2 添加到test2中

sudo ip link set veth-test1 netns test1
sudo ip netns exec test1 ip link
sudo ip link set veth-test2 netns test2
sudo ip netns exec test2 ip link
sudo ip link

添加ip地址

sudo ip netns exec test1 ip addr add 192.168.1.1/24 dev veth-test1
sudo ip netns exec test2 ip addr add 192.168.1.2/24 dev veth-test2
sudo ip netns exec test1 ip link
sudo ip netns exec test2 ip link
#雖然添加了ip地址但是不顯示,這是為什么?因?yàn)樾枰堰@2個(gè)端口都啟動(dòng)起來(lái)
sudo ip netns exec test1 ip link set dev veth-test1 up
sudo ip netns exec test2 ip link set dev veth-test2up
sudo ip netns exec test1 ip link
sudo ip netns exec test2 ip link
sudo ip netns exec test1 ip a
sudo ip netns exec test2 ip a


image.png

是否互通

sudo ip netns exec test1 ping 192.168.1.2
sudo ip netns exec test2 ping 192.168.1.1

image.png

PS:通過(guò)linux做的個(gè)實(shí)驗(yàn)跟通過(guò)docker創(chuàng)建的容器的是類似的,只是用linux的方式模擬了docker容器的方式。其實(shí)docker容器的原理就是圍繞這linux底層的網(wǎng)絡(luò)命名空間的原理實(shí)現(xiàn)的。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    亚洲国产91精品视频| 日韩欧美三级中文字幕| 精品国产91亚洲一区二区三区| 麻豆91成人国产在线观看| 国产肥女老熟女激情视频一区| 人妻乱近亲奸中文字幕| 欧美色欧美亚洲日在线| 国产一区二区三区四区免费| 亚洲国产日韩欧美三级| 日本高清加勒比免费在线| 国产真人无遮挡免费视频一区| 日韩日韩日韩日韩在线| 欧美人妻一区二区三区| 成人免费观看视频免费| 国产精品国产亚洲看不卡| 一区二区三区在线不卡免费| 国产毛片对白精品看片| 久久人人爽人人爽大片av| 一区二区日本一区二区欧美| 国产美女精品午夜福利视频| 一级片黄色一区二区三区| 日本最新不卡免费一区二区| 熟女高潮一区二区三区| 国产一区二区三区四区中文| 国内精品一区二区欧美| 日韩和欧美的一区二区三区 | 草草夜色精品国产噜噜竹菊| 欧美一区二区不卡专区| 午夜福利网午夜福利网| 自拍偷拍一区二区三区| 黄色国产自拍在线观看| 免费播放一区二区三区四区| 亚洲第一区二区三区女厕偷拍| 国产一区二区熟女精品免费| 日韩1区二区三区麻豆| 日韩18一区二区三区| 国产精品福利一二三区| 日韩女优视频国产一区| 国产麻豆视频一二三区| 国产99久久精品果冻传媒| 激情中文字幕在线观看 |