Dwa hosty różnych podsieci podłączone do przełącznika


10

Dwa hosty różnych podsieci, niech będą A - 10.1.2.1/24 i B - 10.1.3.1/24 podłączone do tego samego przełącznika S. Czy mogą się komunikować?

O ile rozumiem:

  • A wysyła pakiety o IP B
  • S odbiera go i porównuje z wartościami w zapisanej tabeli adresów, w przeciwnym razie nadaje go.
  • B odbiera pakiety, sprawdź adres IP i akceptuje go.

Czy mam rację?

Odpowiedzi:


17

Niestety nie, mylisz się.

Ron ma rację, nie podałeś maski podsieci, więc gdybyśmy przyjęli maskę klasową, adres 10.xxx miałby maskę 255.0.0.0, która faktycznie umieściłaby dwa hosty w tej samej sieci. W takim przypadku nie mieliby oni problemu z komunikacją.

Biorąc jednak pod uwagę naturę twojego pytania, wyobrażam sobie, że zamierzałeś, aby każdy z tych hostów używał mniejszej maski - zastosujemy 255.255.255.0, która umieszcza oba hosty w dwóch różnych podsieciach.

To powiedziawszy, sedno tego, czego brakuje, polega na zapomnieniu o ARP (Address Resolution Protocol) . W szczególności, dla kogo HostA decyduje się na ARP. Pozwól mi wyjaśnić...


Zanim jakikolwiek host umieści jakiś pakiet w sieci, pierwszą rzeczą, jaką robi, jest ustalenie, czy docelowy adres IP znajduje się w jego własnej sieci, czy w sieci zagranicznej. Przejdźmy przez to z perspektywy Hosta A.

Host A zna jego adres IP (10.1.2.1) i maskę podsieci (/ 24 lub 255.255.255.0). Przy niewielkiej podsieci HostA ustala, że ​​jego sieć obejmuje wszystkie adresy IP w zakresie od 10.1.2.0 do 10.1.2.255. (Pominiemy szczegóły NetID i BroadcastIP, ponieważ na razie nie są istotne)

Host A wie również, że jego docelowym adresem IP jest 10.1.3.1, co wykracza poza zakres adresów IP w sieci własnej hosta A. W związku z tym host A doszedłby do wniosku, że docelowy adres IP 10.1.3.1 znajduje się w sieci zagranicznej, a host A mógł uzyskać dostęp do sieci zagranicznej tylko poprzez mówienie przez router. A dokładniej poprzez domyślną bramę HostA .

Jeśli w tym momencie HostA nie jest skonfigurowany z domyślną bramą, proces kończy się tutaj ogólnym błędem. HostA nie może rozmawiać z HostB.

Jeśli HostA jest skonfigurowany z Bramą Domyślną, wyśle ​​Żądanie ARP (które samo jest ramką rozgłoszeniową), prosząc o adres MAC jego domyślnej bramy - NIE adres MAC końcowego docelowego adresu IP.

Przełącznik, po otrzymaniu ramki rozgłoszeniowej, zalałby pakiet ze wszystkich interfejsów, włączając w to ten, do którego podłączony jest HostB. HostB rzeczywiście otrzyma pakiet, ale ponieważ ARP szuka adresu MAC Bramy Domyślnej (a nie adresu MAC HostB) , HostB po prostu upuści i zignoruje Żądanie ARP, nie wysyłając żadnej odpowiedzi.

HostA nigdy nie otrzymałby adresu MAC swojej domyślnej bramy, a zatem nie byłby w stanie obudować pakietu warstwy 3 nagłówkiem warstwy 2. Pakiet zawiedzie tam.

Możesz zobaczyć proces ARP zilustrowany na tym filmie .


To powiedziawszy, mimo że nieco niezwiązane z twoim pytaniem, chciałem porozmawiać z czymś, co powiedziałeś. Może to być niuans terminologiczny, ale chcę się tylko upewnić, że zostanie przekazany. Przełącznik robi tylko dwie rzeczy: przesyła ramkę, dla której zna docelowy adres MAC, lub ramki zalewowe , dla których nie zna docelowego adresu MAC . Przełącznik nigdy nie nadaje .

Transmisji jest rama, kto jest docelowy adres MAC ffff.ffff.ffff. Jest to specjalnie zarezerwowany adres MAC, specjalnie zaprojektowany dla ramek rozgłoszeniowych. Kiedy przełącznik napotyka ramkę przeznaczoną do ffff.ffff.ffff , jego zachowanie polega na tym, że zawsze zalewa tę ramkę.

Można na to spojrzeć w ten sposób, ponieważ ffff.ffff.ffff jest zarezerwowanym adresem MAC, przełącznik nie może się go nauczyć. Dlatego za każdym razem, gdy przełącznik odbiera coś przeznaczonego do ffff.ffff.ffff, jest zmuszony zalać wszystkie porty w sieci VLAN, w której ramka została pierwotnie odebrana.


Istnieją odpowiedzi skrajne na tę odpowiedź ... hosty mogą nie mieć bramy lub własny adres skonfigurowany jako adres bramy. Powoduje to, że host ARP dla wszystkich adresów i routery obsługujące proxy-arp z trasą (nawet domyślną) do miejsca docelowego odpowiedzą własnym adresem mac.
cpt_fink

3
Istnieją przypadki skrajne dla prawie każdej odpowiedzi / sytuacji. Nie sądziłem, że wchodzenie w niektóre z nich tutaj będzie odpowiednie dla tego pytania.
Eddie

2

Tak. Jeśli są poniżej / 16 podsieci. Do podsieci / 24 potrzebujesz routera.


1
Możesz poprawić swoją odpowiedź, wyjaśniając ją bardziej. Na przykład wyjaśnij, dlaczego to działa /16, ale `/ 24 potrzebuje routera.
Ron Maupin

0

Jeśli host A i B znajdują się w różnych sieciach lub podsieciach i są podłączone do tego samego przełącznika, uważam, że mogą komunikować się przez bramę domyślną.


Adres bramy musi znajdować się w tej samej sieci co adres skonfigurowany na hoście. Ponieważ adres bramy jest adresem używanym do wysyłania ruchu poza sieć , musi on znajdować się w tej samej sieci co host wysyłający, w przeciwnym razie host potrzebowałby bramy, aby dostać się do bramy.
Ron Maupin

0

Tylko jeśli przełącznik jest podłączony do routera, który wie, jak trasować między tymi 2 podsieciami.


Przełącznik warstwy 3 nie wymaga oddzielnego routera
poniżej
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.