/ Linux Reviews / Networking / Kształtowanie Ruchu i Zaawansowany Routing HOWTO - en - pl
12.2. Klasyfikator routeKlasyfikator filtruje na podstawie rezultatów z tabeli routingu. Kiedy pakiet przemierza przez klasy i dociera do takiej, którą oznaczono filtrem `route', dzieli pakiety na podstawie informacji z tabeli routingu.
# tc filter add dev eth1 parent 1:0 protocol ip prio 100 route Dodajemy klasyfikator do węzła 1:0 rodzica z priorytetem 100. Kiedy pakiet dotrze do tego węzła (który jest korzeniem więc stanie się to od razu) sprawdzi tablicę routingu i jeśli znajdzie pasujący wpis wyśle pakiet do określonej klasy z priorytetem 100. Na koniec, by to zaczęło działać, należy dodać odpowiedni wpis do tabeli routingu. Sztuczka polega na tym, by zdefiniować `realm' bazując na adresie źródłowym lub docelowym. Można to zrobić w ten sposób:
# ip route add Host/Sieć via Bramka dev Urządzenie realm NumerŚwiata Na przykład, zdefiniujmy naszą sieć docelową 192.168.10.0 z numerem `realm' równym 10:
# ip route add 192.168.10.0/24 via 192.168.10.1 dev eth1 realm 10 Przy dodawaniu filtrów tras, możemy użyć tych identyfikatorów by określić sieci lub komputery i jednocześnie wyspecyfikować jak trasy będą pasować do filtrów.
# tc filter add dev eth1 parent 1:0 protocol ip prio 100 \ route to 10 classid 1:10 Powyższa reguła mówi, że pakiety przeznaczone do sieci 192.168.10.0 pasują do klasy o identyfikatorze 1:10. Filtr tras może być również użyty do testowania tras źródłowych. Na przykład, mamy podsieć dołączoną do rutera Linuksowego przez interfejs eth2.
# ip route add 192.168.2.0/24 dev eth2 realm 2 # tc filter add dev eth1 parent 1:0 protocol ip prio 100 \ route from 2 classid 1:2 Filtr określa, że pakiety z podsieci 192.168.2.0 (realm 2) będą pasowały do klasy o identyfikatorze 1:2.
/ Linux Reviews / Networking / Kształtowanie Ruchu i Zaawansowany Routing HOWTO | |||||||||||||