Jak działa przełącznik, gdy rozpoznaje adres MAC, ale wysyłający komputer nie jest świadomy MAC docelowego MAC

12

4 komputery są podłączone do przełącznika i ten przełącznik zna ich adresy MAC (wszystkie 4 komputery). Komputer A i komputer D nie komunikowały się jeszcze wcześniej, dlatego nie ma zaktualizowanej tabeli ARP o wzajemnym adresie MAC.

Komputer A chce komunikować się z komputerem D, dlatego wysyła żądanie ARP dla adresu MAC komputera D. Ten ARP byłby komunikatem rozgłoszeniowym (z FF: FF: FF: FF: FF: FF jako docelowym MAC w pakiecie ARP).

Chciałbym zrozumieć, w jaki sposób przełącznik to podejmie, ponieważ jest już świadomy MAC komputera D, ale komputer A nie. Czy przełącznik pozwoli komputerowi D zareagować na wiadomość ARP (transmisję), czy zrezygnuje z żądania ARP i skieruje bezpośrednio pakiet komputera A do komputera D (ponieważ przełącznik jest już świadomy adresu MAC komputera D)?

Aniruddha
źródło
2
Oprócz odpowiedzi wszystkie znane mi systemy operacyjne wydają darmowy ARP, gdy łącze zostanie wyświetlone.
AbraCadaver,
@AbraCadaver To nie jest tak naprawdę istotne. Nieuzasadnione ARP powinny tylko istniejące wpisy w pamięci podręcznej ARP, a nie tworzyć nowych. Ma to na celu wymuszanie przestarzałych wpisów, gdy IP się przenosi lub NIC jest wymieniany, a nie wstępne ładowanie pamięci podręcznej.
Barmar,
@Barmar: Nie. Most / przełącznik widzi ramkę, zapisuje MAC źródła i port. Tak to działa.
AbraCadaver,
@AbraCadaver Co to ma wspólnego z tym, jak przetwarzany jest darmowy ARP?
Barmar,
@Barmar: Bezpłatne ARP nie jest przetwarzane przez przełącznik. Widzi ramkę Ethernet ze źródłowym MAC przychodzącym na konkretny port, to wszystko ...
AbraCadaver

Odpowiedzi:

24

Oczywiście żądanie ARP zostanie zrealizowane.

Przełącznik nie wie o ARP. Wie tylko o Ethernecie (tj. Adresach MAC w ramkach Ethernet), a nie protokołach na nim. (Niektóre przełączniki oferują zaawansowane funkcje, takie jak szpiegowanie IGMP, ale tutaj nie ma to znaczenia).

Ponieważ jest to wiadomość rozgłoszeniowa, musi zostać dostarczona do wszystkich (podłączonych) portów. Tylko o to chodzi. Nie może wiedzieć, że tak naprawdę jest przeznaczony na komputer D.

Daniel B.
źródło
Cóż, Ethernet to protokół. Jednak prosty przełącznik zwraca tylko uwagę na niektóre protokoły (takie jak Ethernet), a nie inne (takie jak protokół internetowy w wersji 4 lub protokół kontroli transmisji).
TOOGAM
2
Żądanie ARP pyta: „Gdzie jest 192.168.0.1?” Przełącznik nie ma o tym pojęcia.
Michael Hampton
11

Żądanie ARP jest jedynie komunikat, który mówi: „Ty tam w OD cokolwiek ! Jaki jest Twój adres MAC?” Mimo że ARP zajmuje się odnajdywaniem adresów warstwy 2, z natury jest to żądanie warstwy 3, ponieważ jest wysyłane na adres IP. Przełączniki nie działają na warstwie 3.

W podanym przykładzie wiesz coś, czego nie ma przełącznik; że adres IP w żądaniu ARP należy do komputera D. Docelowy adres MAC jest transmisją i to wszystko, o czym przełącznik wie lub dba. Jeśli przełącznik dostrzeże rozgłaszany MAC, wyemituje ten pakiet w sposób prosty i prosty.

Tak, są tam przełączniki warstwy 3, a pedanci zwracają uwagę, że ARP technicznie nie jest protokołem warstwy 3, ale nic z tego nie ma znaczenia w tym przykładzie.

Wes Sayeed
źródło