linux下的網橋介紹

2021-08-30 01:26:55 字數 1864 閱讀 9204

網橋用來連線不同的網段。使不同的網段能夠相互通訊,看起來很像三層的路由。它能夠有多個port,從而能夠將資料幀從乙個port複製到另乙個port。

這裡要注意一點,linux下的網橋只能用於乙太網。

來看下示意圖:

其中乙個是bridge,乙個是route。

網橋的主要工作是從輸入幀學習主機的位置,建立乙個位址的表(也就是表明這個主機(mac位址)屬於那個網路),然後基於這個表來複製輸入幀到正確的位置。

這裡雖然bridge只是起乙個引導的作用,可是在下面兩個情況下,網橋也有可能處理輸入幀:

1 將輸入幀up到上層協議棧。

比如說這個網橋剛好還是乙個router。

2 將幀傳遞給協議處理handler.

這裡主要是在stp(spanning tree protocol)中會用到

接下來來看網橋如何工作:

lan1和lan2中的任意主機傳送幀,都會被這兩個lan中的所有主機(包括)接收到,當網橋接收到後,將此幀拷貝到它的port上,這裡也就是拷貝到另乙個lan上。

這裡可以看到這裡有個問題,那就是假設host a傳送乙個幀到host b,而此時,這兩個lan中的所有host都會接受到這個幀,這引起了極大地資源浪費。

當a第一次傳遞給b幀之後,網橋將會學習到a是在lan 1上,然後再當b傳遞資料給a時,網橋就不會傳遞多餘資料給lan 2的主機了。

當網橋收到的位址是鏈路層廣播(ff:ff:ff:ff:ff:ff)時,他就會將這個幀拷貝到其他所有的port.因此多播將不會被學習。

現在還有個問題,那就是區域網的主機是很容易變動的,舉個例子,還是上面的情況,可是我把host a搬到lan 2上去了,而此時網橋還認為a在lan 1上,這個時侯資料傳遞就會出錯了。

這裡解決方法就是使用定時器來定時更新這個表,當位址第一次被學習到時,定時器開始執行,然後當這個位址(mac位址)被重新學習到時,重啟這個定時器。這樣,我們通過設定定時器,就可以定時更新學習表了。這裡的定時器如果設的太短的話,會有個問題,那就是很容易使網橋不知道如何到達另外乙個lan(原因是超時後會刪掉這條記錄,而此時又回到第一次發包的情況了)。網橋就會賦值幀到所有的port.

看下面的示意圖:

網橋迴路的產生.

先看下面的網路圖:

這裡有兩個網橋,此時就有可能會產生迴路。當主機a傳送乙個幀之後,網橋 1 和 2 ,我們假設同時收到這個幀(此時學習到a處於 lan 1),並同時發到lan2,此時他們還會給對方傳送乙個幀,而這個幀剛好是剛才幀的賦值,這個時侯就會使這兩個網橋認為a 處於lan 2上。這個時侯更新查詢表,然後把包又發給lan 1.這時就形成了迴路。

我們用圖來表示上面的網橋和lan的關係:

可以看到如果我們要打破這個迴路只需要關閉掉網橋1 或網橋2 的乙個埠就行了。

打破迴路的演算法基本所有演算法書都有實現,在網路中尋找最佳無環路拓撲結構的演算法是spanning tree protocol,也就是如何在多個網橋和lan中實現無迴路的網路。

linux 網橋介紹以及如何配置

我們需要了解的是網橋是一種工作在資料鏈路層的儲存 裝置,用來連線區域網,基於mac位址來進行埠 比較常見的即透明網橋 transparent bridge 1 網橋的重要功能 1.源位址跟蹤 網橋通過 表來記錄網橋所能見到的連線站點位址,為幀的 提供了路徑選擇。2.幀的 和過濾 網橋可以對幀進行 或...

Linux下的網路管理 網橋設定

網路橋接的功能 虛擬機器需要通過虛擬機器網絡卡實現上網功能,虛擬機器網絡卡是虛擬的,不是真實的,它是軟體來做的。但是虛擬機器核心是無法控制真實主機網絡卡的。核心開啟橋接介面br0,通過橋接介面使得虛擬機器和真實主機的網絡卡處於平行的網路,通過控制介面來控制物理網絡卡。4.重啟網路 root loca...

Linux下的網路管理 網橋設定

一.網橋 網路橋接的功能 虛擬機器需要通過虛擬機器網絡卡實現上網功能,虛擬機器網絡卡是虛擬的,不是真實的,它是軟體來做的。但是虛擬機器核心是無法控制真實主機網絡卡的。核心開啟橋接介面br0,通過橋接介面使得虛擬機器和真實主機的網絡卡處於平行的網路,通過控制介面來控制物理網絡卡。二.網橋設定 1.nm...