Jak konfigurować, modyfikować i usuwać mosty i obligacje sieciowe Linux

Jak konfigurować, modyfikować i usuwać mosty i obligacje sieciowe Linux

W tym przewodniku omówimy dwa podstawowe koncepcje sieciowe, które są mostkowane i łączące. Zobaczymy, jak skonfigurować, modyfikować i usuwać mosty i wiązania w systemie Linux. Wykazamy procedurę Linux Mint 20 Ulyana System. Możesz jednak wdrożyć tę samą procedurę na Ubuntu lub Debian.

Wymagania wstępne:

  • System Linux z co najmniej dwoma interfejsami sieciowymi
  • Użytkownik sudo

Mosty

Mostkowanie polega na stworzeniu pomostu między dwoma lub więcej interfejsami sieciowymi, aby przejść między nimi ruch. Pozwala udostępnić połączenie internetowe swojego systemu z innymi systemami. Rozważ scenariusz, w którym system A (bez połączenia internetowego) chce połączyć się z połączeniem internetowym innego systemu B. Wszystko, czego potrzebujesz, to podłączenie obu systemów za pomocą kabla Ethernet i utworzenie pomostu między nimi. Jednak, aby to zrobić, będziesz potrzebować dwóch interfejsów w swoim systemie B. Jeden interfejs zostanie podłączony do Internetu, a drugi będzie podłączony do systemu A.

Ustaw most

W naszym przykładzie założymy most Br0 między dwoma interfejsami, ENS33 I ENS39. ENSS33 Interfejs łączy się z Internetem, podczas gdy ENS39 łączy się z drugim systemem (który wymaga połączenia internetowego). Założymy most przez DHCP.

Najpierw będziesz musiał zainstalować wymagane mosty programowe, aby utworzyć most. Wydaj poniższe polecenie w terminalu, aby zainstalować most-Utils:

$ sudo apt instal instaluj mostki

Utwórz interfejs sieciowy mostu za pomocą poniższego polecenia w terminalu:

$ BRCTL Addbr Br0

To polecenie utworzy most o nazwie Br0. Możesz nazwać to, co chcesz.

Teraz dodaj oba interfejsy, które chcesz zlikwidować (jeden, który łączy się z Internetem, a drugi, który łączy się z drugim systemem) przy użyciu poniższej składni:

$ sudo brcctl addif

Na przykład w naszym przypadku byłoby to:

$ sudo BRCTL addif Br0 end33 end39

Powyższe polecenie doda ENSS33 I ENS39 do mostu Br0.

Teraz wyświetl interfejs mostu:

$ ip link set dev w górę

W naszym przypadku byłoby to:

$ ip Link Ustaw dev Br0 w górę

Możesz także uruchomić poniższe polecenie, aby uruchomić interfejs (w przypadku DHCP).

$ sudo dhclient BR0

Teraz edytuj /etc/Network/Interfaces Plik i dołącz następujące wiersze:

Auto Br0
Iface Br0 INET DHCP
Bridge_ports ENS33 ENS39

Teraz uruchom ponownie usługi sieciowe za pomocą poniższego polecenia:

$ sudo systemCtl restartuj sieci sieciowe. praca

Teraz most został skonfigurowany i mam nadzieję, że będziesz mógł uzyskać dostęp do Internetu z drugiego systemu.

Zobacz most

Możesz użyć poniższego polecenia, aby wyświetlić wszystkie skonfigurowane mosty w systemie i dołączone do nich interfejsy.

$ BRCTL Show

Zmodyfikuj most

Dodaj interfejs do mostu

Możesz dodać interfejs do już istniejącego mostu w następujący sposób:

$ sudo BRCTL addif most_name interfejs_name

Na przykład, aby dodać interfejs o nazwie ENS38 do już istniejącego mostu wymienionego Br0, Poleceniem byłoby:

$ sudo Brctl addif Br0 end38

Usuń interfejs z mostu

Możesz także usunąć interfejs z mostu w następujący sposób:

$ sudo brctl delif most_name interfejs_name

Na przykład, aby usunąć interfejs o nazwie ENS38 z wymienionego mostu Br0, Poleceniem byłoby:

$ sudo brctl delif br0 end38

Usuń most

Aby usunąć most z systemu, najpierw będziesz musiał go obniżyć. Użyj następującego polecenia, aby to zrobić:

$ sudo ip link zestaw dev most_name w dół

Na przykład, aby usunąć most o nazwie Br0, Najpierw spuść to:

$ sudo ip link set dev Br0 w dół

Następnie, aby usunąć most, użyj następującego polecenia:

$ sudo Brctl Delbr Bridge_name

W naszym przykładzie poleceniem byłoby:

$ sudo Brctl Delbr Br0

Wiązanie sieciowe

Łączenie sieci łączy kilka interfejsów sieciowych, aby zaprezentować je jako pojedynczy interfejs, w efekcie łącząc ich przepustowość w jedno połączenie. Łączenie interfejsów sieciowych zwiększają przepustowość, zapewnia wysoką dostępność i przełączanie awaryjne w sytuacjach, w których jeden z interfejsów zawodzi.

Istnieją różne tryby wiązania sieciowego, które są następujące:

  • tryb = 0 (bilans okrągły Robin)
  • tryb = 1 (aktywny kopia zapasowa)
  • tryb = 2 (bilans xor)
  • tryb = 3 (transmisja)
  • Tryb = 4 (802.3AD)
  • tryb = 5 (Balans TLB)
  • Tryb = 6 (Balance Alb)

Konfiguracja wiązania sieciowego

W tym przewodniku skonfigurujemy tryb 1 (Tryb aktywnego tworzenia kopii zapasowych). Połączymy dwa interfejsy, ENS33 I ENS38. ENS33 będzie naszym aktywnym interfejsem, podczas gdy ENS38 będzie interfejsem kopii zapasowej.

Najpierw będziesz musiał zainstalować Ifenslave narzędzie w twoim systemie. Aby to zrobić, wydaj poniższe polecenie w terminalu:

$ apt Zainstaluj ifenslave

Następnie załaduj moduł jądra za pomocą poniższego polecenia:

$ sudo modprobe Bonding

Powyższe polecenie doda dodatkowe możliwości do jądra Linux.

Teraz znajdź interfejsy sieciowe. Aby to zrobić, możesz użyć poniższego polecenia:

$ ip link

Poniższe wyjście pokazuje, że istnieją dwa interfejsy sieciowe ENS33 I ENS38 inny niż interfejs pętli. Połączymy dwa interfejsy, ENS33 I ENS38, W obligacie nazwanej Bond0.

Teraz edytuj pliki interfejsów sieci za pomocą poniższego polecenia w terminalu:

$ sudo nano/etc/sieci/interfejsy

Zmodyfikuj plik w następujący sposób:

Pamiętaj, aby zastąpić nazwę interfejsu swoim.

Auto ENS33
Iface Ens33 inet Manual
Bond-Master Bond0
Bond-Primary ENS33 ENS38
Auto ENS38
IFACE ENS38 INET Manual
Bond-Master Bond0
Bond-Primary ENS33 ENS38
Auto Bond0
IFACE BOND0 INET DHCP
nieobsługiwane niewolnie
tryb obligacji 1
Bond-miimon 100

Teraz zapisz i zamknij plik konfiguracyjny interfejsu.

Teraz uruchom ponownie usługę sieci, korzystając z poniższego polecenia:

$ sudo systemCtl restartuj sieci sieciowe.praca

Uruchom polecenie „ifconfig” lub „ip a”, a tym razem zobaczysz Bond0 jako osobny interfejs z przypisanym adresem IP. Możesz także zobaczyć, że nie ma adresu IP przypisanego do ENS33 I ENS38 interfejsy.

Wiązanie testowe

Aby sprawdzić, czy Bonding działa, wydaj poniższe polecenie:

$ cat/proc/net/bonding/bond0

Poniższe wyjście pokazuje, że tryb wiązania jest Aktywne obrocie, i zarówno podstawowy, jak i obecnie aktywny niewolnik ENS33.

Teraz przetestować Tryb aktywny, Uruchom ciągłe ping z innego systemu w sieci do adresu IP serwera wiązania (który w naszym przypadku wynosi 192.168.72.179). Twój ping powinien działać pomyślnie. Następnie spróbuj wyłączyć aktywny interfejs i sprawdź, czy ping jest kontynuowany lub zatrzymuje się. Jeśli ping jest kontynuowany, oznacza to, że wiązanie zostało pomyślnie skonfigurowane.

Jeśli uruchomisz poniższe polecenie, możesz również zobaczyć, że główny niewolnik ENS33 jest w dół, podczas gdy obecnie aktywny niewolnik jest teraz ENS38.

Zmodyfikuj wiązanie

Zmień aktywny interfejs niewolnika

Możesz także zmienić aktywny interfejs niewolnika w wiązaniu za pomocą -C Opcja w następujący sposób:

$ sudo ifenslave -c obligacja aktywna_interface

Na przykład w naszym scenariuszu mamy ENS33 Jako aktywny interfejs, podczas gdy ENS38 jako interfejs kopii zapasowej. Ustawić ENS38 Jako aktywny interfejs niewolnika poleceniem byłoby:

$ sudo ifenslave -c bond0 end38

Teraz, aby potwierdzić, czy aktywny interfejs został pomyślnie zmienił, wydaj poniższe polecenie w terminalu:

$ cat/proc/net/bonding/bond0

W poniższym wyjściu widać, że interfejs aktywnego niewolnika zmienił się na ENS38.

Zmień tryb wiązania

Aby zmienić tryb wiązania, edytuj /etc/Network/Interfaces Plik i zmień wartość trybu wiązania. Na przykład, aby zmienić tryb wiązania Aby Round-Robin, zmodyfikuj wartość tryb wiązania do 0.

tryb wiązania 0

Teraz, aby potwierdzić, czy tryb wiązania się zmienił, wydaj poniższe polecenie w terminalu:

$ cat/proc/net/bonding/bond0

W poniższym wyjściu jasne jest, że tryb wiązania zmienił się na Round-Robin.

Przymocowanie niewolnika

Aby dołączyć nowy interfejs niewolnika do już istniejącego obligacji, użyj następującej składni:

$ sudo ifenslave -v interfejs bond_name

-v jest używany tutaj do mocnej wyjścia.

Na przykład, aby dodać nowy interfejs niewolnika ENS33 Do już istniejącego obligacji 0, poleceniem byłoby:

$ sudo ifenslave -v bond0 end33

Odłączający niewolnik

Aby oddzielić interfejs niewolnika od wiązania, użyj -D Opcja w następujący sposób:

$ sudo ifenslave -v interfejs bond_name

-V jest tu używany do wyjścia wetonowego.

Na przykład, aby odłączyć interfejs niewolnika ENS33 z Bond0, Poleceniem byłoby:

$ sudo ifenslave -d -v bond0 end33

Usunąć wiązanie

Aby usunąć więź, edytować /itp./Sieć.Plik interfejsów, i usuń konfiguracje związane z wiązaniem. Pozostaw tylko konfigurację interfejsów w ten sposób:

Auto ENS33
iface end33 INET DHCP
Auto ENS38
iface end38 INET DHCP

Następnie zapisz i zamknij plik konfiguracji interfejsów.

Teraz usuń wiązanie z poniższym poleceniem:

$ sudo rmmod Bonding

Następnie uruchom usługi sieciowe:

$ sudo systemCtl restartuj sieci sieciowe.praca

To wszystko w tym jest! W tym artykule po pierwsze, pokazaliśmy, jak skonfigurować most sieciowy, aby udostępnić połączenie internetowe z innymi systemami. Następnie pokazaliśmy, jak zmodyfikować mosty, dodając lub usuwając interfejs z mostu. Następnie pokazaliśmy, jak skonfigurować obligacje sieciowe, aby mieć zwiększoną przepustowość, wysoką dostępność i przełączanie awaryjne. Następnie pokazaliśmy, jak zmodyfikować wiązanie, zmieniając jej aktywnych niewolników, przymocowanie/odłączanie niewolników i zmieniając tryby wiązania. Pokazaliśmy również, jak usunąć mosty i więzi.