0
A
回答
1
host-gw
在主機上添加路由表項,以便主機知道如何對容器網絡數據包進行通信。
這適用於L2,因爲它只涉及hosts
,switches
和containers
。 switches
不關心IP和路由,hosts
知道containers
存在,以及如何路由到它們,containers
只是發送和接收數據。
如果hosts
處於不同網絡,則引入L3,並涉及routers
。 routers
不知道containers
存在,並且任何容器數據包將被丟棄,使通信不可能。
當然,您可以在routers
上添加路由表條目,但這是失控的flannel
。
0
host-gw在每個主機上添加路由表條目。並且條目如下:
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.110.110.1 0.0.0.0 UG 100 0 0 eth0
10.100.14.0 10.110.110.21 255.255.255.0 UG 0 0 0 eth0
10.100.38.0 0.0.0.0 255.255.255.0 U 0 0 0 docker0
10.110.110.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
169.254.169.254 10.110.110.1 255.255.255.255 UGH 100 0 0 eth0
最重要的項目是網關(10.110.110.21)的值。路由表將目標MAC地址更改爲直接連接到10.110.110.22(當前節點)的L2節點(10.110.110.21)的MAC地址。
如果不是L2連接,則數據包不能傳送到節點(下一跳)
相關問題
- 1. 直接TCP \ IP連接需要什麼?
- 2. 爲什麼IPAddress.Any需要連接到遠程主機?
- 3. Box2D機體之間的分層連接
- 4. 爲什麼我需要宏的雙層間接尋址?
- 5. VBox和主機之間的連接
- 6. 帶法蘭絨的Kubernetes無法在不同節點上的2個豆莢之間建立連接
- 7. html5和mysql之間的直接連接
- 8. 左內連接與左外連接 - 爲什麼外層需要更長的時間?
- 9. 爲什麼Node.js/Express不接受本地主機的連接?
- 10. 在主機之間建立TCP連接
- 11. 我需要什麼樣的MySQL連接?
- 12. 我需要什麼樣的連接?
- 13. IPv6我真的需要連接什麼?
- 14. 爲什麼底層的TCP連接如此之遲?
- 15. 在什麼情況下想要連接到本地主機以外的主機?
- 16. 爲什麼AbstractList.removeRange需要二次時間?
- 17. 在AWS中爲kubernetes設置法蘭絨
- 18. 連接點與隔離區域之間的多對一關係需要什麼?
- 19. 是facebook連接我需要什麼?
- 20. 連接amadeus api需要什麼東西?
- 21. 我需要什麼SQL連接?
- 22. 無法連接到虛擬機(TcpStream)主主機連接
- 23. 爲什麼我需要左外連接如果我有正確的外連接?
- 24. 需要關於localhost的幫助。爲什麼我無法通過任何瀏覽器連接到本地主機?
- 25. Apache2虛擬主機默認爲直接IP連接
- 26. 爲什麼Git試圖連接到錯誤的主機?
- 27. 爲什麼tiller連接到本地主機8080的kubernets api?
- 28. TwitterAPIExchange「無法連接主機」
- 29. DbCommand和連接 - 爲什麼配置不關閉底層連接?
- 30. c# - 如何發現連接到第二層交換機的所有主機?