Czy komputer może mieć więcej niż jedną bramę domyślną?

12

Wiem, że komputer może mieć wiele kart sieciowych, z których każda ma różne identyfikatory sieciowe (IP, MAC itp.).

Moje pytanie brzmi: czy dany komputer może mieć więcej niż jedną aktywną bramę domyślną? A jeśli tak, to skąd komputer (lub lepiej system operacyjny) wie, jakiego adaptera użyć dla danego pakietu?

użytkownik4537
źródło
słowo kluczowe jest „domyślne”, jeśli po prostu powiedział bramę ip, to może być inaczej.
Tony Roth
1
Najlepszym sposobem na to jest ustawienie wyższej metryki trasy na jedną z wartości domyślnych. Działa to całkiem dobrze zarówno w systemie Windows, jak i Linux. Trasa z niższą metryką wygrywa, dopóki interfejs nie przestanie działać
Mike Pennington
1
Naprawdę chciałbym wiedzieć, co próbujesz osiągnąć za pomocą wielu domyślnych bram. Równoważenie obciążenia?? Być może istnieje bardziej szczegółowe pytanie podstawowe.
Paul Ackerman

Odpowiedzi:

25

Technicznie tak, praktycznie nie.

Kluczem jest termin „domyślny”, to domyślny - mam domyślną kanapkę, którą zamawiam w Subway (klopsik Marinara z serem i jalapeños), od której różnią się rutynowo, choć nadal moja domyślna, ale nie mam dwóch domyślnych.

Tak samo jest z interfejsami sieciowymi, definiujesz „normę”, a następnie określasz za każdym razem, gdy chcesz zerwać z tą normą za pomocą „tras statycznych” (spójrz na polecenie „route” w wybranym systemie operacyjnym).

Mam nadzieję, że to pomoże i nie sprawiło, że byłeś zbyt głodny ...

Siekacz 3
źródło
7
+1 za analogie żywności.
Tom O'Connor,
1
+1 Chociaż większość systemów operacyjnych może obsługiwać wiele widoków sieciowych, co może pozwolić na wiele domyślnych bram, choć prawie na pewno nie w tym samym sensie, o jakim pytający pyta.
Chris S
Co się stanie, gdy masz dwie karty sieciowe, A i B, ustawisz domyślną bramę wychodzącą przez A, a ktoś rozpocznie z tobą rozmowę przez B? (Jestem ciekawy, ponieważ napisałem odpowiedź na temat tej konkretnej sytuacji, a teraz zaczynam ją kwestionować)
1
@ArjunShankar następnie przesyła z powrotem za pomocą NIC B, po prostu dlatego, że wie o tej trasie, domyślna trasa jest używana tylko wtedy, gdy nie ma bezpośredniej trasy do celu.
Chopper3
Warto jednak zauważyć, że jeśli odbierasz pakiety w sieci B z sieci, z którą nie jesteś połączony (było to dla Ciebie ZROUTOWANE), otrzymasz rozmowę asymetryczną, ponieważ sieć docelowa nie znajduje się w tabeli routingu i jako taka odpowiedzi trafią do domyślnej bramy. Jeśli jest to prosta droga, i tak powinna działać, ale jeśli przechodzi przez stanową zaporę ogniową w dowolnym miejscu, może się z tobą
sikać
18

Nie, nie może mieć więcej niż jedną aktywną bramę domyślną.

Każdy system operacyjny może mieć skonfigurowanych wiele bram domyślnych (technicznie trasa do nieokreślonego adresu , tj. 0.0.0.0Lub ::). W takim przypadku robi to, co zrobiłby dla dowolnego miejsca docelowego trasy z wieloma ścieżkami.

  • Wybiera aktywną trasę na podstawie wartości Preferencji
  • Jeśli jest ich wiele z tą samą Preferencją, wówczas wybiera jedną na podstawie Metryki
  • Jeśli zarówno Preferencje, jak i Metryka są takie same (co prawdopodobnie byłoby tak tylko w przypadku tras statycznych), metoda wyboru, która będzie się różnić w zależności od systemu operacyjnego, ale wybierze jedną i oznaczy ją jako aktywną

Użyje aktywnego wyboru, dopóki system nie wykryje, że nie jest już funkcjonalny (będzie się to różnić w zależności od sposobu wstawienia tras do tabeli routingu), a następnie przełączy się na inną dostępną trasę (ponownie, w oparciu o Preferencje, a następnie Metrykę).

A jeśli nowa trasa zostanie wprowadzona z wyższą metryką lub preferencją, przełączy się na najbardziej preferowaną, a następnie najkrótszą metrykę.

Ale w dowolnym momencie może mieć tylko jedną (lub zero) aktywną trasę do dowolnego konkretnego miejsca docelowego.

bahamat
źródło
Uwaga: celowo pominąłem bardziej szczegółowe trasy, ponieważ temat dotyczy wartości domyślnych . Wybór trasy odbywa się w kolejności 1) najbardziej konkretnej 2) najwyższej preferencji 3) najkrótszej metryki. Jeśli wszystkie są równe, jest to mniej więcej arbitralne.
bahamat
fajna odpowiedź, sensowna i krótka
SpacemanSpiff
@bahamat Jeśli mam dwa ustawienia domyślne, a aktywny nie może doprowadzić mnie do celu. Czy system operacyjny spróbuje od razu skontaktować się z drugim?
AhmedWas,
@AhmedWas Niestety, odpowiedź jest bardziej złożona, niż zmieści się w komentarzu wymiany stosu. To naprawdę zależy od wielu różnych czynników. Czasami może tak być, ale innym razem może nie, w zależności od tego, jak jest skonfigurowany i jak zachowują się inne komponenty w sieci.
bahamat
@bahamat Dzięki za komentarz. Czy mógłbyś tylko wymienić prosty przykład, w którym system operacyjny spróbuje skontaktować się z drugą dostępną bramą?
AhmedWas,
3

W systemie Windows (przynajmniej Vista) posiadanie wielu domyślnych tras w tym samym interfejsie z różnymi wskaźnikami jest w porządku. Windows automatycznie przełączy się na trasę z następną najwyższą metryką, jeśli router niższej metryki ulegnie awarii. Jeśli istnieje wiele domyślnych tras z tą samą metryką, system Windows losowo wybiera jedną do użycia.

Pozwala to na posiadanie redundantnych routerów bez konfigurowania przełączania awaryjnego na routerach.

W systemie Linux to nie działa. Możesz mieć wiele domyślnych tras z różnymi metrykami, ale obecnie jądro Linux ignoruje wartość metryki. Jeśli domyślny router z najniższą metryką zniknie, ruch nie będzie płynął.

JPW
źródło
Warto również zauważyć, że możesz ustawić domyślną bramę dla wielu połączeń, ale jeśli otworzysz menu ustawień zaawansowanych w połączeniach sieciowych, w którym możesz wybrać kolejność wiązania, wybierzesz, która karta sieciowa będzie na górze, a następnie iść w dół linii. Zabawne jest dla mnie, ilu ludzi marnuje niektóre z tych rzeczy za pośrednictwem interfejsu CLI, gdy wystarczy jedno kliknięcie.
SpacemanSpiff
1
Domyślne trasy nie są takie same jak domyślne bramy. Oba są używane w różnych kontekstach.
John Gardeniers
@JPW Jeśli mam dwie wartości domyślne, a ta aktywna nie może doprowadzić mnie do celu. Czy system operacyjny spróbuje od razu skontaktować się z drugim?
AhmedWas,
3

Domyślna brama jest wykorzystanie trasa jeśli żaden z innych tras pasuje. Zgodnie z tą definicją może być tylko jedna na raz.

Z wyjątkiem nie bardzo, ponieważ Twoje reguły routingu mogą być bardziej skomplikowane. Na przykład współczesne wersje systemu Linux obsługują wiele całkowicie niezależnych tabel routingu i określają pakiet po pakiecie, która tabela ma zostać sprawdzona. Na przykład, być może masz jedną konfigurację sieci używaną do normalnego ruchu, ale zupełnie inną tabelę routingu dla przeglądarki internetowej. A może masz inną tablicę routingu, która jest używana tylko dla pakietów z określonymi zestawami bitów TOS. Ale każda miałaby swoją domyślną bramę, która odzwierciedlałaby domyślną trasę dla tej konkretnej tabeli routingu.

Zwykle tabela routingu jest tak prosta, jak „lokalny ruch do lokalnego interfejsu, wszystko inne do routera”. Ale jeśli używasz bardziej skomplikowanej konfiguracji sieci, to istnieją narzędzia do radzenia sobie z dowolnym scenariuszem sieci, jaki możesz wymarzyć.

tylerl
źródło
to powinna być zaakceptowana odpowiedź.
prosti
1

Komputer może mieć więcej niż 1 domyślną bramę, ale w statycznej konfiguracji adresu IP podajesz tylko 1 adres, w rzeczywistości może to być kilka domyślnych bram, które zabiorą cię poza twoją sieć. Istnieje adres zwany adresem zmiennoprzecinkowym, który jest tylko adresem wirtualnym i nie jest prawdziwy. Adres to adres pływający między dwoma routerami w jednej sieci. adres zmiennoprzecinkowy jest wprowadzany na komputerze, a kiedy zbliża się do przełącznika w pracy / przed wejściem do routerów, wyciąga własne wnioski na temat ścieżki i wybiera jedną z dwóch lub więcej bram domyślnych.

Trudno jest pokazać, jak to działa, to profesjonalne narzędzia sieciowe, a protokołami, które działają w sieci, gdy jest używana, są: VRRP i HSRP. Protokoły Cisco i Juniper.

Danny
źródło
0

Tak, możesz. Ale jaki jest tego sens?

Najprawdopodobniej szukasz czegoś w rodzaju „trybu odzwierciedlania” (myślę, że tak się nazywało Solaris 2.4.x). Być może możesz szczegółowo opisać swoje pytanie tutaj - jaka jest twoja obecna konfiguracja i jaki jest twój cel.

W każdym razie - zgaduję, że masz serwer wielodomowy z interfejsami sieciowymi, które mogą potencjalnie odbierać ruch z dowolnego klienta. Teraz chcesz odpowiedzieć przez ten sam interfejs, z którego przyszedł ruch ...

Można to zrobić - ale nie za pomocą prostych środków domyślnej bramy.

Nils
źródło
-2

w przypadku komputera z systemem Windows: narzędzie wyboru gry można znaleźć w wierszu polecenia: „route” „route print” wyświetli bieżącą tabelę routingu

możesz mieć tylko jedną bramę domyślną na adapter. Komputer skutecznie wykorzysta tylko jedną bramę - pierwsza karta wymieniona w routingu kolejności wiązania NIC będzie przeglądać tablicę tras, stosując bardziej szczegółowe reguły i stając się bardziej ogólna, gdy będzie działać przez tabelę.

spójrz na ten artykuł, aby znaleźć pomysły ... Windows 7 nie zmienił się tak bardzo od czasu win2k. http://support.microsoft.com/kb/140859

koło zamachowe33
źródło
1
Czy ktoś ma coś przeciwko temu, żeby mnie głosować? Udzielona przeze mnie odpowiedź zaczyna odpowiadać na niektóre dodatkowe pytania, które zostały zadane.
cwheeler33
-5

Jeśli twój serwer / komputer jest wieloadresowy, co oznacza, że ​​jest częścią dwóch oddzielnych sieci, będziesz mieć domyślną bramę na każdej karcie sieciowej. Następnie priorytetyzujesz karty sieciowe. Jak powiedzieli inni, nadal masz tylko jedną bramę domyślną, ale na kartę sieciową.

znak
źródło
4
Nie, nie, NAPRAWDĘ nie zrobiłbyś - to zadziwiająco niepoprawna odpowiedź
Chopper3
2
Mylisz domyślne trasy z domyślnymi bramami, które są zupełnie innymi zwierzętami.
John Gardeniers