Routing MAC a IP

0

czytałem Odpowiedź z inny post czego nie rozumiałem i chciałbym wyjaśnić.

Twoje oryginalne założenia nie są całkowicie poprawne. Co nazywasz a   router to dwa urządzenia w jednym - wewnętrzny router z dwoma portami   do wieloportowego przełącznika Ethernet.

Oznacza to, że komputery są bezpośrednio połączone w warstwie 2 i   może wysyłać pakiety do siebie bez przechodzenia przez rdzeń routera -   są one po prostu przekazywane między portami przez układ przełączający. (Router   ma swój własny port w przełączniku.)

Jeśli więc spojrzysz na pakiety za pomocą Wiresharka, zobaczysz, że one   bezpośrednio używaj swoich adresów MAC, podczas gdy poza pakietami zawsze   mieć MAC routera jako miejsce docelowe.

...

... każdy komputer w podsieci nie jest ze sobą połączony, ale     raczej do przełącznika     które następnie mogą przekazywać pakiety 1 do poprawnego     przeznaczenie. Ramka Ethernet nie zawiera maski podsieci, jak     przełącznik ma już tę wiedzę i dlatego jej nie potrzebuje     wykonaj prawidłowe przełączenie.

To znowu niepoprawne. Przełączniki nie mają   ta wiedza; ich rdzeń przełączający działa w warstwie 2 i nie działa   wiedzieć wszystko o IP - przekazuje ramki Ethernet wyłącznie na podstawie   pole „docelowy adres MAC”.
____________________
1 [Nota redakcyjna] Przypuszczalnie ma to być „pakiet”.

Źródło https://superuser.com/a/1191145/337631

Jak parafraza powyżej może być prawdziwa? Skonfigurowałem sporą część sprzętu sieciowego klasy domowej i nie wydaje się, aby tak było w rzeczywistości. W routerze dostępne są opcje filtrowania i routingu adresów IP i MAC. Ponadto, gdy używasz oprogramowania VM, twoja fizyczna karta sieciowa przechodzi w tryb mieszany, gdzie odbiera pakiety wysyłane na wiele adresów IP i przekazuje poprawne do maszyny wirtualnej i maszyny rzeczywistej (hosta). Z pewnością wersja IP cztery będzie działać, nawet jeśli adres MAC został w jakiś sposób wstrzymany.

Annon Blank
źródło
Więc to pytanie jest niejasne i może nie-temat. Która część pytania jest cytatem i skąd cytujesz? Jeśli zaczniesz cytować za pomocą > są oznaczone jako cytaty. Czy możesz edytować swój post, aby cytaty były jasne i odnosił się do postu, który omawiasz?
Stephen Rauch
rozumiesz, że każdy pakiet IP jest przenoszony wewnątrz ramki Ethernet (z adresem MAC), prawda? Layer2 przenosi Cię przez sieć lokalną; Warstwa 3 umożliwia przejście z jednej sieci lokalnej do innej. Tak więc każdy pakiet ma zarówno adres IP źródła / przeznaczenia, jak i adres MAC źródła / przeznaczenia.
Frank Thomas
1
Cytat z drugiego posta jest mniej lub bardziej poprawny (większość routerów ma w rzeczywistości przełączniki wirtualne poprzez łączenie oddzielnych portów, ale pojawiają się one jako przełączniki i mogą w rzeczywistości być przełącznikiem). Post mówi, że tak zwany router jest w rzeczywistości przełącznikiem 5-portowym, z 1 portem wewnętrznie połączonym z routerem 2-portowym. Część routera musi wiedzieć o możliwościach filtrowania i routingu mac, aby działały jako router. To, co mówisz o oprogramowaniu VM, jest tylko częściowo poprawne - (zakładając, że nie używa on trybu nat lub routed), w rzeczywistości tworzy most, więc działa jak wirtualny przełącznik.
davidgo
1
Podczas gdy pakiety IPv4 mogą być przekazywane bez adresu MAC, pakiety ethernetowe tego wymagają.
davidgo

Odpowiedzi:

4

Jak parafraza powyżej może być prawdziwa? Skonfigurowałem sporą część sprzętu sieciowego klasy domowej i nie wydaje się, aby tak było w rzeczywistości. W routerze dostępne są opcje filtrowania i routingu IP i Mac.

To nie jest zaskakujące, ani w żaden sposób nie stanowi problemu.

Po pierwsze, chociaż routery IP są opisywane jako urządzenia „warstwy 3”, nie oznacza to, że nie mogą wchodzić w interakcje z niższymi warstwami - one robić zazwyczaj widzę cały pakiet, zarówno z nagłówkami Ethernet, jak i IP, a reguła zapory doskonale pasuje do jednego lub obu.

Po drugie, zamierzam powtórzyć, że ma to miejsce w sprzęcie sieciowym klasy domowej wielokrotność funkcjonalności - główny procesor uruchamia system operacyjny i obsługuje routing; przełącznik sprzętowy obsługuje przekazywanie pakietów warstwy 2 między portami „LAN”; oraz uchwyty punktu dostępu Wi-Fi, a także Wi-Fi. Jest całkowicie możliwe, aby ten sam system operacyjny mógł skonfigurować zarówno rdzeń routingu, jak i dołączone przełączniki i amp; Sprzęt Wi-Fi.

(W rzeczywistości mógłbym się założyć, że opcja filtrowania MAC to konkretnie dla punktu dostępu Wi-Fi - mogą one zezwalać lub blokować skojarzenia WLAN warstwy 1 na podstawie MAC stacji. Chociaż nie jestem pewien, czy jest to zwykle wymuszane przez sam układ Wi-Fi AP, czy przez hostapd działający na głównym systemie ...)

Następnie ludzie nazywają to „przełącznikami warstwy 3”, które w zależności od potrzeb mogą działać jako przełączniki lub routery - każdy port jest rekonfigurowalny, więc niektóre porty mogą być przełączane (a więc należą do tej samej podsieci), reszta jest kierowana i system operacyjny ponownie konfiguruje układ przełączający, jeśli to konieczne.

Również podczas korzystania z oprogramowania VM fizyczna karta sieciowa przechodzi w tryb mieszany, w którym odbiera pakiety wysyłane na wiele adresów IP i przekazuje prawidłowe do maszyny wirtualnej i do prawdziwej maszyny.

Tak, to też nie problem. Nic nie stoi na przeszkodzie, aby komputer stał się routerem IP lub mostem lub ich kombinacją. Większość oprogramowania maszyn wirtualnych może działać w obu trybach - albo zmostkować maszyny wirtualne do sieci LAN w warstwie 2, albo utworzyć dla nich oddzielną podsieć, aby komputer działał jako router między nimi.

(W związku z tym komputery mogą stać się naprawdę elastyczne - wczoraj usunęłam „broutera”, który został skonfigurowany jako most z wyjątkiem jeśli chodzi o pakiety IPv4, które zamiast tego zostały przekierowane ...)

Z pewnością wersja IP cztery będzie działać, nawet jeśli adres Mac był jakoś wstrzymany.

Naprawdę, to nie IP wymaga adresowania L2 - to warstwa 2 samo to robi.

Tak, z pewnością możliwe byłoby zaprojektowanie sieci, która troszczyłaby się tylko o adresy IP i wykorzystywała je również do przełączania. W rzeczywistości myślę, że właśnie tak działały sieci ATM - przełącznik „ATM” zasadniczo działałby jako samokonfigurujący się router, ale również automatycznie dowiedział się, które poszczególne adresy ATM znajdowały się za każdym portem (jak przełącznik).

Ale w praktyce IP został zaprojektowany nie mieć twardą zależność od dowolnego rodzaju warstwy łącza iw rezultacie możesz ją przenieść byle co - Ethernet , FDDI , ARCnet , FireWire , gołębie pocztowe … Podobnie, ponieważ większość warstw łączy miała własne adresowanie, unikając zależności od IPv4, nie trzeba było robić nic, aby te same przełączniki obsługiwały IPv6 (lub w tym przypadku IPX lub DECnet, lub AppleTalk, lub NetBEUI…) w tej samej sieci Ethernet.

Powodem, dla którego masz oba rodzaje adresów, jest to, że celowo trzymano je osobno, co pozwoliło na dużą elastyczność.

(Zarówno IPv4, jak i IPv6 mogą również działać w połączeniach punkt-punkt bez potrzeby adresowania L2, ponieważ takie łącza i tak mają tylko dwa kierunki; dwa proste przykłady to VPN i połączenia telefoniczne).


Właściwie, chociaż nie ma to nic wspólnego z maskami podsieci, można spojrzeć na IPX i DECnet - oba popularne protokoły LAN na początku okresu, w którym IP i Internet przejęły kontrolę. Adresy IPX miały dwie części, sieć i host, np. 618A1.0060086DD3EE, a część hosta była zawsze taka sama jak odpowiadający adres MAC Ethernet. Tymczasem DECnet zrobił odwrotnie - wymagał zmiany Ethernet MAC na specjalny adres, w którym adres węzła DECnet był zakodowany. Z jednej strony nie potrzebowałeś ARP, ale z drugiej strony byłeś bardzo zobowiązany do korzystania z Ethernetu lub czegoś z nim zgodnego.

grawity
źródło
Jeszcze nie jest 1 kwietnia ... Każdego roku patrzę na RFC na śmiech.
Frank Thomas
@FrankThomas: Właściwie to przeczytałem jakieś praktyczne zastosowanie tego (lub coś blisko tego). „Dave Costlow, właściciel Rocky Mountain Adventures, oszacował, że w zeszłym roku, 91 procent czasu, jego gołębie dostarczyły film lub pamięć wystarczająco szybko, aby wydrukować i wyświetlić zdjęcia raftingowe, zanim klienci, wciąż ociekający z jazdy, wrócili do sklepu . ” Nie żart: ludzie „myślą, że to wyczyn kaskaderski”. [...] „ale zwiększamy nasze zyski, przygotowując nasze zdjęcia”.
TOOGAM
Wow, ktoś opublikował wersję IPv6 „Standardu transmisji datagramów IP na Avian Carriers” RFC. tools.ietf.org/html/rfc6214
Frank Thomas
1

W routerze dostępne są opcje filtrowania i routingu IP i Mac.

Wiele routerów domowych ma możliwość dostępu do urządzeń bezprzewodowych tylko z określonymi adresami MAC, ale nie będzie nic o „routingu MAC”.

Oto prosty i prosty schemat blokowy tego, co się dzieje.

enter image description here

Wszystkie małe pola, które są interfejsami sieciowymi, są Ethernet interfejsy sieciowe. Przychodzące ramki muszą być Ethernet.

Również podczas korzystania z oprogramowania VM fizyczna karta sieciowa przechodzi w tryb mieszany, gdzie odbiera pakiety wysyłane na wiele adresów IP i przekazuje poprawne do maszyny wirtualnej i do prawdziwej maszyny.

To jest Przekazywanie MAC , ale nie tak naprawdę routing. To właśnie robi przełącznik sprzętowy i jest to możliwe i nierzadkie, aby funkcja była wykonywana w oprogramowaniu. Nie ma prawdziwego wymogu, aby tylko 1 MAC odpowiadał za fizyczny interfejs (tak naprawdę wygląda i działa koncentrator, a nie przełącznik). Termin routing stosowany w sieci oznacza konkretnie przekazywanie między dwiema oddzielnymi sieciami.

Z pewnością wersja IP cztery będzie działać, nawet jeśli adres Mac był jakoś wstrzymany.

IP nie dba o adres MAC, ale poniższa warstwa może.

konkretnie Ethernet , protokół warstwy 2, robi dbać o adres MAC.

Więc pamiętajcie, co naprawdę macie, to nie tylko router, ale Ethernet router z wbudowanym 4 portem Ethernet przełącznik.

Ethernet wymaga adresów MAC. Jeśli przychodzący protokół warstwy 2 nie jest Ethernetem, nie przejdzie do routera, ponieważ wszystkie pozostałe interfejsy oczekują Ethernetu.

Jak parafraza powyżej może być prawdziwa?

Ethernet MAC działa przy następujących założeniach:

  • Jeśli coś wyśle ​​ramkę z docelowym adresem MAC przez interfejs, dotrze do tego MAC.

  • Zwykle sytuacja ta sprawia, że ​​wszystkie urządzenia są A) na tym samym nośniku fizycznym, lub B) pośredniczone za pomocą przełącznika, który w sposób przezroczysty uczy się docelowych adresów MAC, aby umożliwić lepsze wykorzystanie tego, co naprawdę jest współużytkowanym medium.

Co jeśli system docelowy, do którego chcesz dotrzeć, nie znajduje się w tej samej sieci? Następnie powyższe dwa założenia zawodzą, a Ethernet sam w sobie nie może już pomóc w rozmowie z systemem docelowym. Ethernet dba tylko o systemy na tym samym przełączniku lub medium.

Potrzebne są routery i „warstwa routingu” nad Ethernetem i dokładnie to Internetowa praca Protokół (IP) jest dla. Adresy IP są jawnie globalne i nie przejmują się podstawową warstwą projektową - powinieneś być w stanie dotrzeć do dowolnego adresu IP z dowolnego miejsca na świecie, niezależnie od reguł zapory (prywatne zakresy adresów to „hack” wprowadzony później w celu złagodzenia niedobory).

LawrenceC
źródło
0

Odkąd wspominam o warstwach, zacznę od szybkiego wprowadzenia. Dolne 4 warstwy modelu OSI to:

  • 4 - Transport - zazwyczaj działa z numerami portów (TCP lub UDP)
  • 3 - Sieć - zazwyczaj działa z adresami IP
  • 2 - Data Link - zazwyczaj działa z adresami MAC-48
  • 1 - Fizyczne - zazwyczaj pracujące z sygnałami elektrycznymi (np. Czy media są dostępne lub zajęte?) - często obsługiwane przez sprzęt tak bardzo, że oprogramowanie nie musi dużo współpracować z tą warstwą

Z pewnością wersja IP cztery będzie działać, nawet jeśli adres Mac był jakoś wstrzymany.

Nie, adres MAC-48 nie może zostać wstrzymany.

Zazwyczaj dzieje się tak, że komputer wysyłający informacje tworzy pakiet IP. (Może to być IPv4 lub IPv6-- nie wpływa na opisywany tutaj proces). Pakiet IP określa adres IP urządzenia docelowego. To urządzenie może być lokalne (np. Drukarka w sieci) lub zdalne (znajdujące się w połowie świata).

Komputer następnie tworzy ramkę, która może być siecią Ethernet (dla połączeń przewodowych) lub Wi-Fi (dla połączeń bezprzewodowych). Ramka wymaga docelowego adresu MAC-48. Tak więc komputer sprawdza, który adres MAC-48 ma być używany. Używa „tabeli routingu”, aby dowiedzieć się, jaki docelowy adres MAC-48 ma zostać użyty. Jeśli docelowy adres IP znajduje się w tej samej podsieci, komputer użyje procesu konwersji warstwy 3 do warstwy 2 (ARP z IPv4, NDP dla IPv6), aby znaleźć docelowy adres MAC-48 urządzenia (np. Drukarki). Jeśli docelowy adres IP jest czymś zdalnym, komputer użyje tego samego rodzaju procesu konwersji warstwy 3 do warstwy 2, aby znaleźć docelowy adres MAC-48 urządzenia bramy (zwykle nazywany „bramą domyślną”, chyba że masz więcej rozbudowana konfiguracja, która ma bardziej specyficzną bramę, z której mogą korzystać niektóre firmy działające w wielu lokalizacjach).

Tak jak pakiet IP zawiera pewne informacje, które chcesz komunikować, nazywane „ładunkiem”, tak ramki mają sekcję zwaną „ładunkiem”. Komputer tworzy ramkę, która używa pakietu IP jako ładunku. Powstała ramka zawiera pakiet IP.

Następnie komputer wysyła ramkę do dowolnego połączenia. Nazywamy to często „przełącznikiem”. Ale w tym przykładzie załóżmy, że jesteś podłączony do routera.

Teraz router może wykonywać funkcje podobne do „zapory”:

  • blokowanie adresu MAC-48 („Filtrowanie MAC”) lub
  • patrząc w ramkę, przeglądając pakiet IP i blokując określony adres IP („Filtrowanie adresu IP”), lub
  • szukanie w ramce, znajdowanie pakietu IP, szukanie pakietu IP, znajdowanie segmentu TCP lub datagramu UDP i wyszukiwanie tego segmentu / datagramu w celu znalezienia „numeru portu” i filtrowanie na podstawie portu

Załóżmy, że nie ma żadnych funkcji zapory, które mogą powodować problemy.

Urządzenie docelowe przyjrzy się docelowemu adresowi MAC. Jeśli urządzenie odbierze ramkę zawierającą docelowy adres MAC-48, którego urządzenie nie używa, urządzenie po prostu zignoruje tę ramkę, chyba że urządzenie działa jak „most”. („Przełącznik” jest zasadniczo „mostem wieloportowym” z więcej niż 2 portami; urządzenia zwykle nie są sprzedawane / sprzedawane z nazwą „most”, chyba że urządzenie konwertuje między różnymi typami nośników fizycznych. urządzenia z wieloma portami są zwykle nazywane „przełącznikami”, a urządzenia z dwoma portami mogą być „przedłużaczami”.) Jeśli urządzenie jest mostem, to po prostu przechodzi wzdłuż ramki.

Jeśli urządzenie odbierze ramkę z docelowym adresem MAC-48, który pasuje do tego, z którego korzysta urządzenie, urządzenie przetwarza ramkę. Zasadniczo urządzenie określa, „Przyjmuję to”, wyodrębnia ładunek (który jest pakietem IP) i traci ślad pozostałych bitów ramki. W tym momencie urządzenie przestaje patrzeć na szczegóły ramki „Layer 2” i zwraca uwagę na szczegóły pakietu „Layer 3”.

  • Jeśli pakiet warstwy 3 określa docelowy adres IP urządzenia, patrząc na pakiet, to urządzenie przetwarza pakiet (zazwyczaj przez zauważenie pakietu to TCP, UDP lub ICMP; jeśli TCP lub UDP to sprawdza numer portu, aby zobaczyć jaki program powinien otrzymać dane).
  • Jeśli pakiet warstwy 3 określa inny docelowy adres IP:
    • Jeśli urządzenie jest skonfigurowane jako router, urządzenie skieruje pakiet. Oznacza to, że należy spojrzeć na tabelę routingu routera, ustalić następny cel i utworzyć nową ramkę zawierającą adres MAC-48 następnego urządzenia.
    • W przeciwnym razie pakiet jest zazwyczaj ignorowany.
      • Jeśli pakiet nie zostanie zignorowany, urządzenie tak naprawdę nie spełnia normalnych oczekiwań, więc urządzenie działa w tzw. „Trybie promiscuous”. (Twój komputer, na którym działa „maszyna wirtualna”, robi to, aby komputer przekazał ruch do maszyny wirtualnej).

Tak więc sekcja obwodów / oprogramowania, która obsługuje przychodzący pakiet IP, nigdy nie widzi pakietu IP, dopóki ramka nie zostanie przetworzona. Dlatego wymagany jest adres MAC-48; jest to podstawowy sposób komunikowania się urządzeń z innymi urządzeniami w sieci lokalnej. Jeśli nie masz ramek, nie masz komunikacji, więc miejsce docelowe nigdy nie otrzymuje pakietu IP. (Dlatego to następne cytowane zdanie nie ma zbyt wiele sensu dla ludzi, którzy wiedzą, jak działają te kroki).

Z pewnością wersja IP cztery będzie działać, nawet jeśli adres Mac był jakoś wstrzymany.

Pakiety IP nie zawierają adresów MAC-48. (No cóż, oczywiście mogą zawierać adres MAC-48 jako część swojego ładunku, ale to nie jest częścią struktury pakietu IP.) Do czasu, gdy urządzenie zwraca uwagę na szczegóły pakietu IP , to urządzenie prawdopodobnie nie potrzebuje już żadnych szczegółów warstwy 2 (takich jak adres MAC-48), więc urządzenie mogło już zapomnieć o tych szczegółach.

TOOGAM
źródło
Dziękuję za tę odpowiedź. To naprawdę niesamowicie wyjaśniło mi wszystko. Patrzyłem na to wszystko źle.
Annon Blank