31 Maja 2020 19:49:29
Nawigacja
· Strona Główna
· Galeria
· Forum
· Linki

· Tomato by Shibby

· Wiki-OpenWrt
· Wiki-DD-WRT
· Emulatory sprzętu

Darowizna
Ostatnio na forum
Najnowsze tematy
· migracja na Mikrotika
· [S] Komputer Mini-ITX
· [S] Dune HD Solo
· dodane lokacji ftp d...
· [MOD] FreshTomato-MI...
· [S] Xiaomi Mi9T Pro ...
· WNR3500L v2 - czy to...
· [S] Netgear R7000p N...
· [MOD] FreshTomato-AR...
· R7000
· [S] Netgear WNR3500L x3
· [S] Dysk Twardy 3.5'...
· TP-Link TL-WDR3600 v1
· Multiroom N z wykorz...
· D-link DGS-1210-52 V...
· Monitory biurowe
· cały ruch z WiFi na VPN
· HP microserver gen8 ...
· [Artykuł] Jakie toma...
· [S] ASRock c2750d4i ...
Najciekawsze tematy
· [MOD] FreshTomato... [184]
· [MOD] FreshTomato... [178]
· WNR3500L v2 - czy... [22]
· migracja na Mikro... [17]
· dodane lokacji ft... [4]
· R7000 [3]
· [S] Netgear WNR35... [3]
· [S] Dysk Twardy 3... [2]
· [S] Komputer Mini... [0]
· [S] Dune HD Solo [0]
· [S] Xiaomi Mi9T P... [0]
· [S] Netgear R7000... [0]
Ankieta
Jaki procesor posiada twój router?

Broadcom MIPSEL
Broadcom MIPSEL
38% [140 głosów]

Broadcom ARM
Broadcom ARM
51% [187 głosów]

Atheros
Atheros
6% [21 głosów]

Marvell
Marvell
1% [4 głosów]

Ralink
Ralink
1% [2 głosów]

Intel/AMD/VIA
Intel/AMD/VIA
1% [4 głosów]

Żaden z powyższych
Żaden z powyższych
3% [11 głosów]

Ogółem głosów: 369
Musisz zalogować się, aby móc zagłosować.
Rozpoczęto: 02/02/2015 09:38

Archiwum ankiet
Reklama
Twoje IP
18.206.187.81
Reklama
Zobacz temat
OpenLinksys » :: PORTAL :: » Tutoriale
 Drukuj temat
LACP, czyli Link Aggregation w Tomato
shibby
Wstęp

// tutorial wzorowany doświadczeniami i przemyśleniami z tematu https://openlinks...d_id=20256

Link Aggregation Control Protocol (LACP) (IEEE 802.1AX-2008, wcześniej IEEE 802.3ad), to mechanizm umożliwiający scalenie interfejsów sieciowych w jedno, logiczne połączenie. W linuxie Link Agregation odbywa się z użyciem modułu bonding.ko, dlatego też często stosuje się nazewnictwo bondingu w kontekście linuxa, a pamiętajmy, Tomato to linux Smile

Korzyści z Link Aggregation w porównaniu z tradycyjnym połączeniem za pośrednictwem pojedynczego kabla:
- większa prędkość połączenia
- większa niezawodność

Niezawodność jest dość oczywista. W przypadku uszkodzenia jednego linku (awaria karty sieciowej, uszkodzenie kabla, nieumyślne wypięcie kabla sieciowego) spada jedynie prędkość linku, natomiast komunikacja nadal odbywa się bez przeszkód.

Co do większej prędkości to należy się tu małe dopowiedzenie. Jeżeli mamy 2 komputery ze skonfigurowanym LAG na 2Gbps, to prędkość przesyłu między tymi dwoma komputerami nadal wyniesie maksymalnie 1Gbps. Link Aggregation nie potrafi wykorzystać wielu interfejsów między dwoma końcówkami. Co więcej nie pomoże w tym przypadku MultiChannel SMB3.0 zaimplementowany w Windows 8 i wyżej. Link Aggregation stosuje się wszędzie tam, gdzie wielu użytkowników ma jednoczesny dostęp do zasobów (np. do NAS`a). Przykładem niech będzie serwer, który pełni funkcję serwera plików. Jeżeli skonfigurujemy na nim Link Aggregation z 4-ch sieciówek, uzyskując tym samym LAG o prędkości 4Gbps i podłączy się do niego czterech klientów, każdy z linkiem 1Gbps to każdy z nich będzie w stanie wysycić max swojego linku, czyli 1Gbps (oczywiście pod warunkiem, że wydajność maszyny - dysków - na to pozwoli). W ten sposób wysycimy całe 4Gbps LAG na serwerze.


Konfiguracja

Niniejszy tutorial opisuje konfigurację Link Aggregation między Tomato a Netgear ReadyNAS Pro4, który to posiada dwa porty gigabitowe. Zalecana wersja Tomato to v138 lub wyżej. Minimalna to v137, gdyż w niej finalnie został zmodyfikowany skrypt do bindingu. Wspomnę również, że póki co bonding zaimplementowany jest tylko w Tomato ARM. Do obrazów Mipsel funkcja bondingu pojawi się od Tomato v139.


Tomato

Potrzebujemy wydzielić dwa porty routera jako dwa niezależne interfejsy. W tym celu udajemy się do Advanced -> VLAN.

openlinksys.info/images/lacp/vlan1.png


Jak widać na powyższym obrazku. Porty 3 i 4 zostały wypięte z głównego VLANu (br0), dodane zostały nowe, kolejne VLANy o ID 3 i 4 (akurat tak się złożyło). Do każdego VLANu został wpięty jeden port. Oba VLANy nie zostały przyporządkowane do żadnego bridge`a.

Oczywiście konfiguracja VLANów u Was może wygląda nieco inaczej. Wszystko zależy od tego czy poczyniliście wcześniej jakieś modyfikacje w VLANach, np. przy konfiguracji dualWAN lub sieci gościnnej. Ważne by wydzielić dwa VLANy pod bonding. U mnie przykładowo wygląda to tak:

openlinksys.info/images/lacp/vlan2.png


Jak widać, pomimo mocno rozbudowanej konfiguracji VLANy (u mnie akurat 5 i 6) są skonfigurowane analogicznie jak na pierwszym, wzorcowym obrazku.

Wracamy do meritum. Po ustawieniu VLANów, klikamy SAVE i następuje restart routera. W tym momencie musimy upewnić się, że nie jesteśmy podpięci kablem do wydzielonych portów, gdyż stracimy dostęp do routera. Pamiętajmy, by być wpiętym do portów sparowanych z br0 lub po WiFi.

Gdy router się uruchomi przechodzimy do Administration -> Scripts -> INIT i dopisujemy linijkę:
linkagg vlan3 vlan4 br0


Gdzie vlan3 i vlan4 to wydzielone przez nas vlany (porty) pod bonding, zaś br0 to bridge do którego chcemy wpiąć nowoutworzony LAG.
Po zapisaniu zmian restartujemy router.

Efekt możemy obejrzeć w konsoli wydając komendy:

Pierwsza z nich (ifconfig bond0) powinna pokazać nam nowy interfejs bond0:

openlinksys.info/images/lacp/vlan3.png



Druga zaś (brctl show), iż interfejs bond0 został pomyślnie wpięty do br0:

openlinksys.info/images/lacp/vlan4.png



Istnieje również komenda "linkagg -s", która zwraca status utworzonego linku oraz ewentualne błędy:

openlinksys.info/images/lacp/vlan5.png


Na tym kończymy konfigurację routera i przechodzimy do konfiguracji NASa


ReadyNAS Pro4 z oprogramowaniem OS 6.6.1

Tutaj nie ma żadnej filozofii. Niezależnie od posiadanego NAS`a opis bondingu będzie bardzo zbliżony. Przechodzimy do zakładki z konfiguracją połączeń. W moim przypadku jest to zakładka "Sieć".

openlinksys.info/images/lacp/vlan6a.png



Na aktywnym połączeniu wybieramy "Nowe powiązanie", po czym w nowym oknie wybieramy drugi interfejs (eth1), typ zespołu LACP na warstwie mieszanej 3+4, ponieważ taki tym powiązania tworzy skrypt linkagg w tomato.

openlinksys.info/images/lacp/vlan6b.png



Po zapisaniu zmian ujrzymy jeden interfejs bond0

openlinksys.info/images/lacp/vlan6c.png



Dla porównania tak wygląda bonding w Synology (zdjęcie kolegi @mosfit)

openlinksys.info/forum/attachments/bond1.png




Na koniec spinamy NAS i router drugim kablem sieciowym.



Dla zaawansowanych

Skrypt linkagg został przygotowany tak by obsługiwał tylko jeden LAG, tylko dla dwóch portów i w trybie LACP w warstwie 3+4. Skrypt linkagg jest odpowiednikiem wydania poniższych komend (dla vlan5 i vlan6):

modprobe bonding
# Setting mode to 802.3ad
echo 802.3ad > /sys/class/net/bond0/bonding/mode
# Setting LACP rate to fast
echo fast > /sys/class/net/bond0/bonding/lacp_rate
# Setting MII monitoring interval to 50
echo 50 > /sys/class/net/bond0/bonding/miimon
# Setting xmit hash policy to layer3+4
echo 1 > /sys/class/net/bond0/bonding/xmit_hash_policy
ip link set bond0 up
echo +vlan5 > /sys/class/net/bond0/bonding/slaves
echo +vlan6 > /sys/class/net/bond0/bonding/slaves
brctl addif br0 bond0


Jeżeli ktoś chce stworzyć inny typ linku agregacyjnego np. round-robin, stworzyć drugi interfejs LAG lub utworzyć jeden mega link 4Gbps między routerem a switchem zarządzalnym, wystarczy że odpowiednio zmodyfikuje powyższe komendy i wklei poprawione do skryptu INIT.

Pozdrawiam


Edytowane przez shibby dnia 10-04-2017 13:31
Router: Ubiquiti EdgeRouter ER-12 (FTTH + LTE/failover, OpenVPN, DPI, VLAN)
Wi-Fi: Ubiquiti UAP-AC-Pro
NAS: Xpenology DS918+ (i5-6200u, 8GB ram, 3x 4TB/RAID5, SSD cache, Unifi, Pi Hole/DNS Server, Home Assistant, NextCloud+onlyOffice)
UPS: Eaton Ellipse Eco 650
 
kille72
Super tutek Smile


 
oswaldini
Powiedzcie mi tylko jeszcze jak to się ma hardwareowo, poleci to na każdym routerku czy musi mieć zaimplementowane 802.3ad ? Prosto z mostu - zadziała na RT-N16 ?


Asus RT-N16 / Tomato
Tenda N60 / Tomato
Cisco RV082

HomeSerwer: HP G7 N54L | 2x WD RED 2TB | Synology DSM 6.0.2 | TimeMachine + PLEX + CouchPotato + SickRage + inne
 
msstefan
@shibby
Moglbys podac config dla round-robin?

 
Adooni
czy wszystko jest OK z LACP zrobilem vlan na port 3 i 4
Pobierz kod źródłowy  Kod źródłowy
1   1   Yes      Yes                        *   LAN (br0)
2   2                           Yes         WAN
3   3                                    WAN2
4   4               Yes                     
5   5                     Yes               




a po wydaniu komendy linkagg -s

Pobierz kod źródłowy  Kod źródłowy
--- Bond Status ---

Bond Status: bond0 UP
Bridge to WAN Status: Member of br0
Slave 1 Status: vlan=vlan4 Link=UP Port=2
Slave 2 Status: vlan=vlan5 Link=UP Port=3
0t
1t
2t
0


--- Bond Errors ---





UPC 500/30 Mb/s + CISCO EPC3212 & PLAY LTE + Huawei E3372s-153 Non-Hilink - Failover
Asus RT-AC56U @1200/800 | Freshtomato-RT-AC56U-ARM-2020.1-AIO-64K
HPE MicroServer gen8: Xeon E3-1265Lv2, 16GB (2x KTH-PL316E/8G), 4x4TB WD RED, SSD, SD grub | PROXMOX 5.2.1 | OMV 4.1.3-1
----------------------------------------------------------------------------------------------------------------------------------
Asus WL-500W | Tomato-K26USB-1.28.RT-MIPSR1-132-BT-VPN
Asus RT-N12 | FreshTomato-RT-N12-K26-MIPSR2-2018.5-MiniIPv6
Asus RT-N16 | Tomato-K26USB-1.28.RT-MIPSR2-132-AIO + Huawei E3372s-153 non-hilink + PLAY LTE
 
Przejdź do forum:
Logowanie
Nazwa użytkownika

Hasło



Nie masz jeszcze konta?
Zarejestruj się

Nie możesz się zalogować?
Poproś o nowe hasło
Aktualnie online
· Gości online: 9

· Użytkowników online: 0

· Łącznie użytkowników: 23,917
· Najnowszy użytkownik: KtoTyJestes
Shoutbox
Musisz zalogować się, aby móc dodać wiadomość.

tamtosiamto
30-05-2020 18:16
szukam okazji na fejsowym marketplace, czasem ludzie chyba nie wiedza, co sprzedaja

mosfit
30-05-2020 16:38
kupiłeś za tyle ? No to tanio wyrwałeś . Ja mam na myśli sprzedaż

PixelPL
30-05-2020 13:06
Mi jak padł Asus RT-N16 to używam pfSense na AMD E-350, +550/55Mb

tamtosiamto
30-05-2020 11:06
a ja ac3200 za 250 Wink i ac56 za 150

mosfit
29-05-2020 22:54
dokładnie ! pewne modele się nie psują i nie warto przepłacać za Nowe . Mam R7000 za 330zł

tamtosiamto
29-05-2020 22:36
ostatni raz kupilem nowy ruter z 15 lat temu, od tego czasu z 5 czy 6 asusow, netgearow, jakis tplink, wszytsko uzywki. I wszytskie dzialaja.

gorus1
28-05-2020 16:25
no tak, tyle że on kosztuje ponad 500 zł, a ja szukam czegoś do 300 zł...

tamtosiamto
28-05-2020 13:43
ac56u?

gorus1
28-05-2020 11:59
Witam, szukam jakiegoś routera pod tomato, odpowiednika / następcy netgear 3500Lv2, bez anten do 250 zł. Co możecie polecić?

tamtosiamto
26-05-2020 23:52
kazdy terazniejszy ruter obsluzy 15 klientow wifi, o ile nie masz zbytniego syfu w eterze na 2.4

KaisuM
25-05-2020 21:57
cześć. który router warto wybrać? MT hAP AC2 czy ASUS RT-AC58U V2 czy TP-Link Archer C80 - musi obsługiwać bez problemu 15 klientów po 2,4Ghz dzięki za wskazówki

pedro
08-05-2020 11:59
Po to jest "no-resolv", żeby nie czytał żadnych innych plików, ale usunąć nie zaszkodzi

djwujek
07-05-2020 23:09
A czy z zakładki basic/network/Stat
ic DNS wpisy mają być usunięte zanim dopiszę w skrypcie ? no-resolv\FN server=192.168.1.1
\FN tak ma to wyglądać ?

pedro
07-05-2020 21:14
Advanced->DHCP / DNS->Dnsmasq Custom configuration: "no-resolv\n server=DNS1\n server=DNS2\n server=DNS3\n" Zjada LF więc dodałem \n

djwujek
07-05-2020 19:38
A możesz powiedzieć jak to zrobić ??

pedro
07-05-2020 18:38
Da się

djwujek
07-05-2020 03:19
Czy w tomato da się wpisać trzy adresy dns ?

41,545,759 unikalne wizyty