首頁 > 系統教程 > Linux > 在Linux中配置網絡粘結以獲得高可用性

在Linux中配置網絡粘結以獲得高可用性

Jennifer Aniston
發布: 2025-03-21 09:23:12
原創
778 人瀏覽過

Linux中的網絡鍵合是一種使您可以將多個網絡接口(NIC)組合到單個邏輯接口中,以提高冗餘和性能。在本綜合指南中,我們將探討Linux中網絡鍵合的概念,其好處,不同的鍵合模式和網絡鍵合配置。

目錄

什麼是網絡鍵合?

網絡鍵合,也稱為NIC鍵合組合,是將兩個或多個網絡接口組合到一個稱為的單個邏輯接口中的方法。

在Linux中配置網絡鍵的兩個重要好處:

  • 冗餘:鍵合提供故障轉移功能,即使一個接口失敗,也可以確保網絡連接。
  • 負載平衡:它可以在粘合的接口上分配網絡流量,從而提高整體網絡性能。

粘結模式

Linux支持幾種粘結模式,每種模式旨在解決特定用例。這是最常用的兩個模式:

  1. 模式0(循環) :以圓形旋轉方式將數據包發送到每個鍵合接口。
  2. 模式1(Active-Backup) :一個接口處於活動狀態,而另一個接口處於待機模式。如果活動接口失敗,則另一個接管。

讓我們快速看一下這兩種模式。

1。模式0:循環羅賓

在這種模式下,數據包以圓形界面的旋轉方式傳輸。儘管它提供了一種基本的負載平衡形式,但並未考慮到每個接口的實際負載或狀態。

當您想跨接口均勻分配流量時,此模式很有用。

2。模式1:Active-Backup

Active-Backup模式將一個接口指定為活動鏈接,而其他界面則保持待機模式。如果活動接口失敗,則備用接口之一接管。

此模式是冗餘的理想選擇,即使一個NIC降低了,也可以確保您的網絡保持運行。

希望您對Linux中的網絡聯繫有基本的了解。現在,讓我們看看如何使用Linux中的NetPlan和NMCLI命令創建網絡鍵接口

首先,我們將看到NetPlan方法。

方法1-使用NetPlan在Linux中建立網絡鍵合

在Linux中使用NetPlan創建網絡鍵合是一個簡單的過程。 NetPlan是基於YAML的網絡配置實用程序,用於Ubuntu等現代Linux發行版。要設置網絡鍵合,請按照以下步驟操作:

1。檢查網絡接口名稱

在創建用於網絡鍵合的NetPlan配置之前,必須確定要鍵合的網絡接口的名稱。

您可以使用IP鏈接顯示或IFConfig命令列出可用的網絡接口。通常,這些接口具有ENP0SX或ENSX或ETHX之類的名稱。

 $ IP鏈接顯示
1:lo:<loopback> mtu 65536 qdisc noqueue狀態未知模式默認組默認組默認qlen 1000
    鏈接/循環00:00:00:00:00:00 BRD 00:00:00:00:00:00:00:00
2:<strong><mark> ENS18</mark> : mtu 1500 qdisc fq_codel state up模式默認組默認qlen 1000
    Link/Ether 6E:26:0B:8E:33:8C BRD FF:FF:FF:FF:FF:FF:FF:FF:FF
    AltName ENP0S18
3:<strong><mark> ENS19</mark> : mtu 1500 qdisc fq_codel state up模式默認組默認qlen 1000
    鏈接/Ether 96:D2:11:4A:6D:AD BRD FF:FF:FF:FF:FF:FF:FF:FF
    AltName ENP0S19
4:<strong><mark> ENS20</mark> : mtu 1500 qdisc fq_codel state up模式默認組默認qlen 1000
    鏈接/以太EA:3A:8B:6C:38:E1 BRD FF:FF:FF:FF:FF:FF:FF:FF:FF
    AltName ENP0S20</strong></strong></strong></loopback>
登入後複製

如您所見,我的系統具有三個網絡接口,即ENS18,ENS19和ENS20。

2。創建一個NetPlan配置文件

創建或編輯NetPlan配置文件。 NetPlan配置文件通常存儲在/etc/netplan/Directory中,並具有.YAML擴展名。您可以使用任何文本編輯器來創建或編輯配置文件,例如nano或vim。

例如,創建一個名為01-bond.yaml的文件:

 $ sudo nano /etc/netplan/01-bond.yaml
登入後複製
登入後複製

3。配置鍵接口

在NetPlan配置文件中,定義債券接口及其參數。這是一個示例配置,用於在Active-backup模式下創建具有三個接口(ENS18,ENS19和ENS34)的鍵:

網絡:
  版本:2
  渲染器:NetworkD
  以太網:
    ENS18:
      DHCP4:不
    ENS19:
      DHCP4:不
    ENS20:
      DHCP4:不
  債券:
    債券0:
      接口:[ENS18,ENS19,ENS20]
      地址:[192.168.1.10/24]
      路線:
         - 至:0.0.0.0/0
          Via:192.168.1.101
      名稱服務器:
        地址:[8.8.8.8,8.8.4.4]
      參數:
        模式:Active-Backup
        主:ENS18
登入後複製

用特定的網絡配置替換接口名稱,IP地址,子網,網關和其他參數。您可以通過更改模式參數(例如,向旋翼蛋白的balance-rr或lacp的802.3AD)來使用不同的鍵合模式。

4。應用配置

創建或編輯NetPlan配置文件後,使用NetPlan Apply命令應用更改:

 $ sudo Netplan申請
登入後複製
登入後複製

5。驗證配置

使用IP鏈接或IFConfig命令檢查您的債券接口的狀態。例如:

 $ ip鏈接顯示債券0
登入後複製

您應該看到債券接口(債券0)及其狀態。

6。測試網絡連接

確保您的服務器或工作站可以通過鍵合接口訪問網絡。您可以在網絡上ping其他設備來驗證連接。

我們還擁有各種方法來測試您的債券接口部分。導航到“測試Linux網絡鍵接口”部分,並使用任何一種方法來驗證債券接口是否按預期工作。

就是這樣!您已經成功地使用了NetPlan創建了網絡鍵合配置。請記住,將配置適應您的特定要求,例如鍵合模式,IP地址和網關設置,以適合您的網絡環境。

方法2-使用NMCLI在Linux中配置網絡鍵合

要使用Linux中的NMCLI命令創建網絡鍵合,您可以按照以下步驟進行操作。 NMCLI是用於管理NetworkManager的命令行實用程序,該實用程序是許多Linux發行版中常用的網絡配置工具。

1。檢查網絡接口名稱

在使用NMCLI創建債券接口之前,您應該確定要鍵合的網絡接口的名稱。

您可以使用IP鏈接顯示或IFConfig命令列出可用的網絡接口。接口通常具有ENSX或ENP0SX或ETHX之類的名稱。

 $ IP鏈接顯示
登入後複製

樣本輸出:

在Linux中配置網絡粘結以獲得高可用性

如您在上面的輸出中看到的那樣,我有三個網絡接口,即ENS18,ENS19和ENS20。

2。檢查NetworkManager狀態

確保在系統上安裝並運行NetworkManager。您可以使用以下命令檢查其狀態:

 $ sudo systemctl狀態網絡管理員
登入後複製

如果它不運行,則可以使用以下方式開始使用:

 $ sudo systemctl啟動網絡管理員
$ sudo systemctl啟用網絡管理器
登入後複製

3。創建一個新的債券連接

您可以使用NMCLI命令創建新的債券連接。這是基本語法:

 $ sudo nmcli連接添加類型債券ifname bond0 mode mode_name
登入後複製

將Bond0替換為要給您的債券接口的名稱,然後用要使用的鍵合模式替換Mode_name,例如Active-Backup,Balance-RR或802.3AD。

例如,在Active-backup模式下創建一個名為Bond0的債券

 $ sudo nmcli連接添加類型債券ifname bond0模式active-backup
登入後複製

此命令將創建名為“ Bond-Bond0”的新網絡連接。

成功添加了連接“債券 - 鍵入”(E68041F8-D836-4B83-A743-1BCADEC9D19E)。
登入後複製

4。添加成員接口

現在,您需要添加要在債券中以成員接口中包含的網絡接口。

例如,我將使用NMCLI命令添加ENS19ENS20作為Bond0接口的成員。

用實際網絡接口的名稱替換ENS19和ENS20:

 $ sudo nmcli連接添加類型以太網ifname ens19主債券0
$ sudo nmcli連接添加類型以太網ifname ens20主債券0
登入後複製

這將添加ENS18,ENS19和ENS20作為成員接口到債券0債券連接。

您可以使用命令驗證新創建的網絡連接:

 $ NMCLI連接節目
登入後複製

樣本輸出:

名稱UUID類型設備 
債券 - 邦德0E68041F8-D836-4B83-A743-1BCADEC9D19E債券債券0  
有線連接1 60E8EF3-89F9-3E9F-9919-1944E7ABEE20以太網ENS18  
<strong><mark>債券奴隸-ENS19 578BB27F-F3FF-4059-BD94-5291B98CE2FB以太網ENS19  
Bond-Slave-Ens20 E338B080-6DC6-41B2-BB08-53D0470DCCBD以太網ENS20</mark>       
有線連接2 5527636C-50A9-35A4-B92B-ADCC4F106CBA以太網 -      
有線連接3 878666EF-2160-338B-AADF-E24E9A52509A以太網 - </strong>
登入後複製

5。配置鍵合選項

您可能需要根據鍵合模式和網絡設置配置其他選項。例如,如果您使用的是Active-Backup模式,則可以指定主要接口:

 $ sudo nmcli連接修改債券 - 邦德0primary ens19
登入後複製

在某些鍵合模式(例如Active-backup)中,需要指定主要接口的步驟,以確定哪個接口應為在正常條件下積極運輸網絡流量的主要接口。

此設置對於確保鍵合模式按預期運行,並且在網絡故障的情況下將流量適當分佈或失敗至關重要。

例如,在Active-Backup模式下,指定主接口可確保網絡流量主要通過該接口,並且如果不可用,則備份接口接管。

在沒有指定主接口的情況下,債券可能不知道要使用哪個接口作為發送和接收流量的默認選擇。

6。配置IP地址和DNS設置

您可以使用NMCLI命令為Bond0連接設置IP地址,子網掩碼,網關和DNS設置。例如:

 $ sudo nmcli連接修改債券 - 邦德0ipv4
$ sudo nmcli連接修改債券 - 邦德0ipv4.addresses“ 192.168.1.10/24” 
$ sudo nmcli連接修改債券 - 邦德0ipv4.gateway“ 192.168.1.101”
$ sudo nmcli連接修改債券 - 鍵入0 ipv4.dns“ 8.8.8.8,8.8.4.4”
登入後複製

您還可以在一個命令中提及以下單個命令中的所有網絡詳細信息:

 $ sudo nmcli連接修改債券 - 邦德0ipv4.Method手冊IPV4.ADDRESSES“ 192.168.1.10/24” ipv4.gateway“ 192.168.1.1.101” ipv4.dns“ 8.8.8.8.8.8.8.8.8.8.4.4”
登入後複製

根據您的網絡配置調整IP地址,子網掩碼,網關和DNS服務器。

7。激活鍵連接

最後,使用NMCLI命令激活債券連接:

 $ sudo nmcli連接UP債券 - 邦德0
登入後複製

這將啟動債券接口並使其用於網絡通信。

在Linux中配置網絡粘結以獲得高可用性

8。驗證配置

驗證使用NMCLI命令啟動鍵合接口Bond0:

 $ sudo nmcli連接節目
登入後複製

就是這樣!您已經使用NMCLI命令成功地創建了網絡鍵合配置。現在,根據您選擇的鍵合模式,將您的債券接口配置為冗餘和負載平衡。

您可以使用以下任何一種方法來測試您的網絡鍵接口是否有效。

測試Linux網絡鍵接口

要檢查債券接口是否正常工作,您可以執行各種測試和檢查,以確保其提供預期的冗餘和負載平衡。

這裡有一些步驟可以幫助您驗證Linux中鍵接口的功能:

1。檢查債券狀態

使用以下命令檢查債券接口的狀態(用債券接口的實際名稱替換債券0):

 $ sudo cat/proc/net/債券/債券0
登入後複製

此命令將顯示有關債券接口的詳細信息,包括其模式,從屬接口的狀態以及任何錯誤或故障。

在Linux中配置網絡粘結以獲得高可用性

2。測試故障轉移

為了驗證故障轉移正在按預期工作,您可以物理斷開一個從接口之一(例如,拔下網絡電纜)並監視債券的行為。

債券應自動將流量切換到剩餘的活動從接口。您可以通過在步驟1中提到的命令觀察債券的狀態來檢查此問題。

3。測試負載平衡

如果將債券配置為負載平衡(例如,使用“ Balance-RR”模式),則可以使用IPERF之類的工具來生成網絡流量,並檢查其是否在債券接口上均勻分佈。

如果尚未安裝IPERF,則在您的服務器和其他網絡設備之間進行測試。

例子

  • 在服務器上(綁定的接口):iperf -s
  • 在客戶端上:iperf -c

驗證流量是否正在流過所有鍵合接口,並且與單個接口相比,您正在增加吞吐量。

如果網絡鍵接口正常工作,則應看到與配置鍵接口的系統上以下的輸出相似的輸出。

 $ iperf -s
-----------------------------------------------------------------------------------------
服務器在TCP端口5001上收聽
TCP窗口尺寸:128 kbyte(默認)
-----------------------------------------------------------------------------------------
[1]本地192.168.1.10端口5001與192.168.1.101端口39808連接
[id]間隔傳輸帶寬
[1] 0.0000-10.0011秒38.7 GBYTES 33.3 GBITS/sec
[...]
登入後複製

4。檢查接口狀態

使用標準網絡診斷工具(例如IFCONFIG,IP或NMCLI)檢查單個網絡接口的狀態(從屬和債券)。確保所有接口都啟動並具有預期的IP地址和配置。

例子

 $ ip addr show
登入後複製

在Linux中配置網絡粘結以獲得高可用性

5。審核系統日誌

檢查系統日誌(例如,/var/log/syslog,/var/log/log/sagess),以獲取與債券接口相關的任何錯誤消息或通知。查找指示接口故障或問題的任何消息。

6.監視網絡流量

您可以使用網絡監視工具(例如TCPDUMP或WIRESHARK)來捕獲和分析債券接口上的網絡流量。這可以幫助您確認流量正在平衡或故障轉移按預期工作。

7。ping和測試連接性

在網絡上的債券服務器和其他設備之間執行PING測試和測試網絡連接。驗證您可以到達各種目的地,並且沒有連接性問題。

8。負載測試

除了IPERF之外,您還可以使用Netperf或TTCP等工具進行更全面的負載測試,以評估在重型網絡負載下債券的性能。

通過進行這些測試和檢查,您可以確保您的債券接口正常運行,從而提供冗餘和負載平衡。

這種全面的方法將幫助您確定任何問題,並驗證您的網絡鍵合設置是否滿足您的期望和要求。

更改債券接口的IP地址

稍後,要更改Linux中債券接口的IP地址,您可以按照以下步驟操作:

使用NetPlan修改債券接口IP地址

1。編輯NetPlan配置(使用NetPlan的系統):

如果您將NetPlan用於網絡配置(現代Linux發行版中常見),則需要編輯NetPlan配置文件。例如,如果您的債券接口是在名為01-bond.yaml的文件中配置的,則可以使用文本編輯器進行編輯:

 $ sudo nano /etc/netplan/01-bond.yaml
登入後複製
登入後複製

2。修改IP地址

在NetPlan配置文件中,在您的債券接口配置下找到地址部分。看起來像這樣:

地址:[192.168.1.10/24]
登入後複製

將IP地址和子網掩碼修改為您所需的值。例如:

地址:[192.168.1.20/24]
登入後複製

3。應用配置

進行更改後,保存配置文件並使用NetPlan Apply命令應用更改:

 $ sudo Netplan申請
登入後複製
登入後複製

這將把新的IP地址應用於債券接口。

如果您不使用NetPlan,而是使用其他網絡配置方法(例如NetworkManager或Ifupdown),則步驟可能會略有不同。

在這種情況下,您將需要修改債券接口的配置文件,然後重新啟動或重新加載網絡服務以應用更改。

使用NMCLI修改債券接口IP地址

例如,要使用NMCLI命令更改債券接口的IP地址,請按照以下步驟操作。

1。檢查現有債券配置

在更改之前,請使用NMCLI命令檢查債券接口的現有配置:

 $ NMCLI連接顯示債券0
登入後複製
登入後複製

用債券接口的名稱替換債券0。

2。修改IP地址

使用NMCLI命令修改債券接口的IP地址。用您的債券接口名稱和new_ip_address替換Bond0,並用您要分配的新IP地址替換:

 $ sudo nmcli連接修改債券0 ipv4.addresses new_ip_address/24
登入後複製

例如,將IP地址更改為“ 192.168.1.20/24”:

 $ sudo nmcli連接修改債券0 ipv4.addresses 192.168.1.20/24
登入後複製

3。應用更改

修改IP地址後,您可以使用以下命令將更改應用於債券接口:

 $ sudo nmcli連接UP債券0
登入後複製

此命令使用新的IP地址激活鍵接口。

4。驗證更改

通過檢查債券接口的狀態和IP地址來驗證更改已生效:

 $ NMCLI連接顯示債券0
登入後複製
登入後複製

您應該在輸出中看到更新的IP地址。

通過遵循以下步驟,您可以使用NMCLI成功更改債券接口的IP地址。確保將Bond0和New_ip_address替換為您要分配的特定鍵接口名稱以及所需的IP地址。

特定的配置文件和命令可以根據您使用的Linux分發和網絡管理工具而有所不同。

常見問題(常見問題解答)

這是一些用於Linux網絡鍵合的常見常見問題。

問:Linux中的網絡鍵是什麼?

答:網絡鍵合(也稱為NIC鍵合或組合)是Linux中的一種技術,可將多個網絡接口組合到單個邏輯接口中。它增強了服務器或工作站的冗餘性和性能。

問:為什麼要使用網絡鍵合?

答:網絡鍵合通過提供故障轉移功能來提高網絡可靠性。它還通過跨多個網絡界面的負載平衡來增強網絡性能。

問:Linux中有哪些鍵合模式?

答:Linux支持各種鍵合模式,包括“ Active-Backup”(故障轉移),“ Balance-Rr”(圓形旋轉),“ 802.3AD”(LACP)等。每種模式都有不同的目的,並適合特定的網絡配置。

問:如何測試我的債券接口是否正常工作?

答:您可以通過監視其狀態,模擬網絡失敗以檢查故障轉移行為以及使用IPERF之類的工具來驗證負載平衡來測試債券接口。

問:如果需要更改債券接口的IP地址,該怎麼辦?

答:要更改債券接口的IP地址,請修改相關的配置文件(例如,NetPlan,Ifupdown,NetworkManager),更新IP地址,然後使用適當的命令或工具應用更改(例如,NetPlan應用,NMCLI連接UP)。

問:是否可以在同一系統上混合不同的鍵合模式?

答:是的,可以在同一系統上具有具有不同鍵合模式的多個鍵接口。每個債券接口都獨立運行。

問:我可以從債券接口中添加或刪除從債券接口而不會破壞網絡連接的情況嗎?

答:是的,您可以動態地添加或刪除從債券接口中添加或刪除從屬接口而不會破壞網絡連接性。債券接口將適應更改,前提是正確配置。

結論

網絡鍵合是在Linux系統中增強網絡可用性,冗餘和負載平衡的寶貴方法。通過將多個物理網絡接口組合到單個邏輯接口中,網絡鍵合可提供增加的帶寬,容錯性和流量分佈。

NetPlan和NMCLI是兩個強大的工具,可用於在Linux中配置網絡鍵合。 NetPlan提供了一種基於聲明的YAML來定義網絡配置的方法,而NMCLI提供了用於管理網絡連接的命令行界面。

通過NetPlan和NMCLI的組合,可以在Linux系統上有效實現網絡鍵合,從而確保可靠且高性能的網絡連接。


相關閱讀:

  • 如何在Ubuntu中配置靜態IP地址
  • 如何將多個IP地址分配給Linux中的單個網絡接口卡
  • 如何通過SSH將IP地址分配給遠程Linux系統

以上是在Linux中配置網絡粘結以獲得高可用性的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板