docker macvlan實現雙vlan互通

2022-03-21 20:17:38 字數 3744 閱讀 7252

vlan範圍:0~4095

0,4095 保留 僅限系統使用 使用者不能檢視和使用這些vlan

1 正常 cisco預設vlan 使用者能夠使用該vlan,但不能刪除它

2-1001 正常 用於乙太網的vlan 使用者可以建立、使用和刪除這些vlan

1002-1005 正常 用於fddi和令牌環的cisco預設vlan 使用者不能刪除這些vlan

1006-1024 保留 僅限系統使用 使用者不能檢視和使用這些vlan

1025-4094 擴充套件 僅用於乙太網vlan

發現在workstation上不支援混雜模式,導致vlan不通

- 在no1 no2上開啟vlan功能

modprobe --first-time 8021q

modinfo 8021q

- 在no1和no2上新增2個vlan

ip link add link eth0 name eth0.10 type vlan id 10

ip link set dev eth0.10 up

ip link add link eth0 name eth0.20 type vlan id 20

ip link set dev eth0.20 up

- 在no1上操作docker

docker network create -d macvlan --subnet=172.16.10.0/24 --gateway=172.16.10.1 -o parent=eth0.10 mac_net10

docker network create -d macvlan --subnet=172.16.20.0/24 --gateway=172.16.20.1 -o parent=eth0.20 mac_net20

docker run -itd --name b1 --ip=172.16.10.10 --network mac_net10 busybox

docker run -itd --name b2 --ip=172.16.20.10 --network mac_net20 busybox

- 在no2上操作docker

docker network create -d macvlan --subnet=172.16.10.0/24 --gateway=172.16.10.1 -o parent=eth0.10 mac_net10

docker network create -d macvlan --subnet=172.16.20.0/24 --gateway=172.16.20.1 -o parent=eth0.20 mac_net20

docker run -itd --name b3 --ip=172.16.10.11 --network mac_net10 busybox

docker run -itd --name b4 --ip=172.16.20.11 --network mac_net20 busybox

- 測試

通$ docker exec b3 ping 172.16.10.10

ping 172.16.10.10 (172.16.10.10): 56 data bytes

64 bytes from 172.16.10.10: seq=0 ttl=64 time=0.434 ms

64 bytes from 172.16.10.10: seq=1 ttl=64 time=0.516 ms

^c不通

- 配置no3-容器的閘道器

ip link add link eth0 name eth0.10 type vlan id 10

ip link set dev eth0.10 up

ip link add link eth0 name eth0.20 type vlan id 20

ip link set dev eth0.20 up

ifconfig eth0.10 172.16.10.1 netmask 255.255.255.0 up

ifconfig eth0.20 172.16.20.1 netmask 255.255.255.0 up

- 用n3的vlan10 ping n1的vlan20的位址

參考: ubuntu16.04的docker阿里雲安裝:

apt-get install vlan

ip link add link enp0s8 name enp0s8.10 type vlan id 10

ip link set dev enp0s8.10 up

ip link add link enp0s8 name enp0s8.20 type vlan id 20

ip link set dev enp0s8.20 up

docker network create -d macvlan --subnet=172.16.10.0/24 --gateway=172.16.10.1 -o parent=enp0s8.10 mac_net10

docker network create -d macvlan --subnet=172.16.20.0/24 --gateway=172.16.20.1 -o parent=enp0s8.20 mac_net20

docker run -itd --name b1 --ip=172.16.10.10 --network mac_net10 busybox

docker run -itd --name b2 --ip=172.16.20.10 --network mac_net20 busybox

docker network create -d macvlan --subnet=172.16.10.0/24 --gateway=172.16.10.1 -o parent=enp0s8.10 mac_net10

docker network create -d macvlan --subnet=172.16.20.0/24 --gateway=172.16.20.1 -o parent=enp0s8.20 mac_net20

docker run -itd --name b3 --ip=172.16.10.11 --network mac_net10 busybox

docker run -itd --name b4 --ip=172.16.20.11 --network mac_net20 busybox

快速排序演算法實現(遞迴實現 棧實現)

基本思想 選擇乙個基準元素,比如選擇最後乙個元素,通過一趟掃瞄,將待排序列分成兩部分,一部分比基準元素小,一部分大於等於基準元素,此時基準元素在其排好序後的正確位置,又稱為軸位置,此位置的元素確定後不再參與排序,然後再用同樣的方法遞迴地排序劃分的兩部分。分析 快速排序是不穩定的排序。快速排序的時間複...

介面實現與配置實現

在實現系統功能的時候,通常會首先定義好功能的介面,在系統功能不斷被實現的過程中,慢慢的發現有些介面的實現很類似,這個時候通常會開始做一次抽象,形 成乙個共同的部分,慢慢的系統形成了乙個抽象的層次,而為了通用,通常是通過定義介面,形成乙個抽象類,抽象類中暴露出一些抽象方法供外部擴充套件實 現,逐步的積...

js分頁實現,前端實現。

主要是借鑑了網上乙個例子,自己重新加了樣式,新增了跳轉,修改了一些小地方,用於和大家一起分享,前端分頁的技巧,的資料是我已經寫好了,其實大家也可以前端渲染 然後再分頁,都是可以的。其實分頁最關鍵是這兩句 var startrow currentpage 1 pagesize 1 currentpag...