Networking

以預設網關為自身的主機

  • March 7, 2015

我面臨一個特殊的問題。早些時候,我們在生產設置中有 4 個網段,例如網段 A、B、C 和 D。A、B 和 C 能夠相互通信、公司區域網路和網際網路。Segment D是完全隔離的Segment,純粹用於備份和管理。因此僅在段 D 上的主機 Z 無法訪問任何其他段。

我們最近在我們的生產環境中引入了 vmvare vsphere 5.1 setup。我們在 vCenter 中創建了一個分佈式交換機。分佈式交換機具有來自所有 4 個網段的上行鏈路。我們還為每個分段創建了單獨的埠組。

現在的問題是主機 D 現在能夠與其他網段通信,但只能與 vmware 設置中的網段通信,即連接到分佈式交換機的主機。機器 Z 仍然無法訪問其他段中的物理機器。

現在這是我對問題的分析。

  1. 檢查主機 Z,如果發現預設網關設置為主機 Z 本身。
  2. vsphere 分佈式交換機的行為類似於 L2 交換機,埠組只是一組埠,它們之間沒有任何隔離。
  3. 由於維護了預設網關,因此主機 Z 路由表中存在所有其他網段的路徑。即數據包到達D段交換機$$ point 1 $$. 然後交換機通過上行鏈路將這些數據包發送到 vSphere Distributed Switch,記住第 2 點,數據包到達目標主機。

第3點是我感到困惑的地方[特別是粗體部分],可能是由於我在網路方面的知識較少。因為對於機器 Z,網關是它自己,發送給其他段的任何數據包都應該返回給它自己….!!.??..或者我知道有一種叫做生成樹協議的東西,它可以防止網路中的循環. 這是要上場了……??數據包如何到達我的分佈式交換機……??

如果任何一點是錯誤的,請糾正我,並在此先感謝。

終於得到了我的問題的答案。這是由於 Linux 如何實現 TCP/IP 堆棧。預設情況下,它使用弱主機模型。[ http://en.wikipedia.org/wiki/Host_model]。由於這個原因,連接到專用網路的遠端主機網路適配器正在響應另一個適配器的 ip 上的請求。

主機 Z 始終只訪問專用網路 D。正如肖恩所說,由於 Z 的預設網關設置為自身,它會嘗試將數據包直接發送到支持該行為的任何其他主機。

引用自:https://serverfault.com/questions/582388