Dlaczego w sieciach korzystających z protokołu TCP / IP adres IP jest tłumaczony na adres MAC?
Mam na myśli, że skoro każde urządzenie zna swój adres IP, po co dalej używać adresu MAC, a nie adresu IP jako adresu bezpośrednio?
Dlaczego w sieciach korzystających z protokołu TCP / IP adres IP jest tłumaczony na adres MAC?
Mam na myśli, że skoro każde urządzenie zna swój adres IP, po co dalej używać adresu MAC, a nie adresu IP jako adresu bezpośrednio?
Odpowiedzi:
Główną różnicą jest to, że adres IP jest używany przez protokół IP, który jest protokołem sieci, a adres MAC jest używany przez Ethernet jako protokół warstwy łącza (2). IP może działać na różnych protokołach warstwy 2, więc nie obejmuje funkcji „dostępu do multimediów”. Możesz uruchomić IP przez linie szeregowe, Ethernet, DSl, ISDN itp.
Na przykład DHCP zapewnia dynamiczne adresy IP przez Ethernet; serwer DHCP potrzebuje adresu MAC, aby mógł przypisać adres IP do komputera.
Ponieważ TCP / IP jest używany przez Ethernet , który wykorzystuje adresy MAC.
Innym sposobem spojrzenia na to jest zadanie odwrotnego pytania: Dlaczego potrzebujemy adresów IP, skoro już mamy adresy MAC przypisane do sprzętu?
Zostało to omówione w odcinku 29 podcastu Security Now ( transkrypcja HTML ).
Dzięki adresom MAC nasze komputery mogą komunikować się bezpośrednio z jednym komputerem. Ale aby wiedzieć, jak się tam dostać, musimy skierować nasze pakiety do niego. Niepraktyczne jest posiadanie globalnej tabeli wyszukiwania adresów MAC na każdym z naszych komputerów.
Z drugiej strony adresy IP są uporządkowane hierarchicznie. Nasze komputery mogą ustalić, które adresy IP znajdują się w sieci LAN, a reszta zostanie wysłana do bramy sieci LAN (np. Routera domowego). Po opuszczeniu sieci LAN kolejne routery sprawdzają adres IP i kierują pakiety do innego routera. W końcu router, który ma docelowy adres IP w swojej sieci LAN, może zidentyfikować adres MAC i wysłać pakiet do komputera docelowego.
Są dla różnych warstw w stosie sieciowym. Adres MAC dotyczy warstwy sieci Ethernet, a adres IP, no cóż, warstwy IP. Możesz używać IP w różnych transportach, takich jak SLIP, gdzie nie ma MAC, ponieważ nie ma sieci Ethernet. Możesz również użyć protokołu innego niż IP przez Ethernet, jeśli chcesz.
Jeśli się nad tym zastanowić, jeśli połączę się przez połączenie SLIP, jeden pakiet IP może zacząć się od niepowiązanego adresu MAC, a następnie mieć inny adres MAC, ponieważ przeskakuje z jednego routera na drugi, gdy jest przesyłany przez Internet do końcowego miejsca docelowego IP.
Gwarantujemy, że adresy MAC są unikalne dla urządzenia (karta sieciowa zazwyczaj zawiera adres MAC) i są niezmienne, podczas gdy można ponownie zdefiniować adres IP na dowolnym komputerze.
Ponadto publiczne adresy IP mogą być współużytkowane przez całą firmę za pomocą translacji adresów sieciowych, więc nie można zagwarantować, że publiczne adresy IP będą korespondowały jeden na jeden z maszyną lub osobą.
Mógłbym odpowiedzieć na twoje pytanie innym pytaniem: masz numer telefonu, więc dlaczego potrzebujesz numeru ubezpieczenia społecznego / krajowego numeru identyfikacyjnego?
Innymi słowy, służą one różnym celom. Jeden służy do identyfikacji, kim jesteś (SSN, MAC), a drugi do określenia, jak się z tobą skontaktować (numer telefonu, adres IP).
Ponadto możliwe jest skontaktowanie się z kimś przez telefon, jeśli nie ma on numeru SSN (na przykład inny kraj), podobnie jak możliwe jest skontaktowanie się z kimś przez Internet, jeśli nie ma on MAC (inny rodzaj warstwy łącza) . Różne warstwy łączy mają różne metody identyfikacji miejsc docelowych i źródeł pakietów danych.
Weźmy przykład
Jeśli złożysz podanie o pracę w firmie ... czy dadzą ci to bez znajomości Twojej tożsamości? na pewno nie .... więc twoim prawdziwym dowodem tożsamości jest adres Mac
a kiedy dołączysz do firmy, podadzą oni inny identyfikator pracownika, aby komunikować się między pracownikami tej firmy. To jest adres IP.
twój identyfikator pracownika może zostać zmieniony, jeśli zmienisz firmę, ale twoich rzeczywistych informacji o tobie nigdy nie można zmienić (wiek, imię itp.) ...
Twoje pytanie jest bardzo uzasadnione! Prawda jest taka, że teoretycznie można stworzyć system oparty wyłącznie na IP i dobrze funkcjonować bez potrzeby systemu adresowania MAC. Warstwę łącza danych można ustawić tak, aby ignorowała wszelkie filtrowanie adresów MAC, pozostawiając tę funkcjonalność warstwie sieci, aby filtrować według własnego adresu IP. Takie systemy istniały w przeszłości, takie jak sieci oparte na łączeniu urządzeń przez ich porty UART (np. RS232). Oczywiście te interfejsy sieciowe nie nosiły adresów MAC ani żadnej innej formy unikalnej, fizycznej tożsamości. Może jednak sprawić, że centralne przypisywanie adresów IP, np. Przez serwer DHCP, będzie koszmarem, ponieważ nie byłoby sposobu, aby upewnić się, że urządzenie nie otrzyma więcej niż z góry określona liczba adresów IP dozwolona dla każdego urządzenia. Również, trudno byłoby jednoznacznie i indywidualnie zidentyfikować każde urządzenie. Unikalny adres MAC, przynajmniej w ramach podsieci, służy jako unikalny token identyfikacyjny. Oczywiście indywidualne przypisywanie adresów IP urządzeniom może rozwiązać problem, ale w przypadku dużej liczby urządzeń w sieci ustanowienie i utrzymanie takiego schematu staje się niepraktyczne.
Adres IP jest podobny do kodu pocztowego lub kodu kraju lub kodu ISD, co upraszcza adres lokalizacji, w przeciwnym razie bardzo trudno jest posortować cały adres MAC lub zidentyfikować dokładną lokalizację, w przeciwnym razie komputer poświęci dużo czasu na identyfikację lub zachowanie adresu ogromna baza adresów MAC na komputerze lokalnym.