Ta inwersja jest bijectywna, więc nie mogę zrozumieć, do czego to służy.
ipv6
protocol-theory
Silviu
źródło
źródło
Odpowiedzi:
RFC 4291 zawiera instrukcje dotyczące tworzenia adresu EUI64:
A RFC 2373 zapewnia „dlaczego” za siódmym bitem:
Ale to trochę kęs. Mówiąc prościej… W architekturze adresu MAC siódmy bit oznacza, czy adres MAC został przypisany uniwersalnie czy lokalnie. Wartość 0 wskazuje, że adres jest administrowany uniwersalnie. Na przykład, gdy IANA przypisuje unikatowy identyfikator organizacyjny (OUI) dostawcy karty NIC, siódmym bitem będzie 0, co oznacza, że OUI został przypisany uniwersalnie. Jeśli użytkownik ręcznie zmieni swój adres MAC, ten siódmy bit zostanie ustawiony na 1, wskazując, że adres Ethernet był administrowany lokalnie .
Istnieje również więcej informacji na ten temat w PacketLife .
źródło
Odbywa się to w celu sklasyfikowania ręcznie przypisane adresy, takie jak
prefix::1
,prefix::2
itd. Jako lokalny.Załóżmy, że konfigurujesz sieć w prefiksie
2001:db8:dead:beef::/64
. Prawdopodobnie będziesz używać adresów IP opartych na MAC dla większości swoich węzłów. Jednak w przypadku niektórych węzłów, takich jak serwer DNS, serwer katalogów itp., Będziesz chciał użyć adresów, które są łatwiejsze do wpisania i łatwiejsze do zapamiętania niż adresy oparte na MAC. W przypadku serwera DNS prawdopodobnie będziesz chciał użyćZauważ, że bit U / L jest ustawiony na 0 - co z powodu inwersji bitu klasyfikuje identyfikator hosta jako lokalny.
źródło
W skrócie, ponieważ w ethernetowym MAC siódmy bit jest zdefiniowany jako lokalny / # globalny, podczas gdy w IPv6 siódmy bit w 64-bitowym interfejsie ID jest zdefiniowany jako globalny / # lokalny.
źródło
EUI 64 oznacza tylko adres MAC (48 bitów), który ma
w środku, aby wypełnić wszystkie 64 bity. Stąd nazwa EUI-64. Dokładnie mówiąc , masz na myśli zmodyfikowany EUI-64, co oznacza EUI-64 w połączeniu z bitflipem siódmego bitu.
Siódmy bit został zmieniony, ponieważ w adresach MAC ten siódmy bit wskazywał różnicę między lokalnym (0) a globalnym (1). Lokalny w tym sensie to na przykład interfejs szeregowy.
Ponieważ wszystko to polega na automatycznym utworzeniu adresu publicznego, który będzie na globalnym interfejsie (w kategoriach MAC), dałoby to 1 na 7 pozycji. Zmienili to trochę, więc nie musisz zapisywać adresu dołka, a możesz napisać skrótem „::”
Przykład (z RFC 2373):
Krótka odpowiedź Nawet jeśli każdy adres MAC skończyłby na adresie IPv6, który miałby liczbę HEX większą niż 0 na pewnej pozycji w adresie IPv6. Dzięki temu można mieć Zera, aby można było używać notacji skróconej.
źródło