यह उलटा बायजेक्टिव है, इसलिए मैं इसका उपयोग नहीं कर सकता।
यह उलटा बायजेक्टिव है, इसलिए मैं इसका उपयोग नहीं कर सकता।
जवाबों:
RFC 4291 EUI64 पता बनाने के लिए निर्देश प्रदान करता है:
Links or Nodes with IEEE 802 48-bit MACs
[EUI64] defines a method to create an IEEE EUI-64 identifier from an
IEEE 48-bit MAC identifier. This is to insert two octets, with
hexadecimal values of 0xFF and 0xFE (see the Note at the end of
appendix), in the middle of the 48-bit MAC (between the company_id
and vendor-supplied id). An example is the 48-bit IEEE MAC with
Global scope:
|0 1|1 3|3 4|
|0 5|6 1|2 7|
+----------------+----------------+----------------+
|cccccc0gcccccccc|ccccccccmmmmmmmm|mmmmmmmmmmmmmmmm|
+----------------+----------------+----------------+
where "c" is the bits of the assigned company_id, "0" is the value of
the universal/local bit to indicate Global scope, "g" is
individual/group bit, and "m" is the bits of the manufacturer-
selected extension identifier. The interface identifier would be of
the form:
|0 1|1 3|3 4|4 6|
|0 5|6 1|2 7|8 3|
+----------------+----------------+----------------+----------------+
|cccccc1gcccccccc|cccccccc11111111|11111110mmmmmmmm|mmmmmmmmmmmmmmmm|
+----------------+----------------+----------------+----------------+
और RFC 2373 7 वें बिट को फ़्लिप करने के पीछे 'क्यों' प्रदान करता है:
The motivation for inverting the "u" bit when forming the interface
identifier is to make it easy for system administrators to hand
configure local scope identifiers when hardware tokens are not
available. This is expected to be case for serial links, tunnel end-
points, etc. The alternative would have been for these to be of the
form 0200:0:0:1, 0200:0:0:2, etc., instead of the much simpler ::1,
::2, etc.
लेकिन वह थोड़ा मुंहफट है। तो सरल शब्दों में ... मैक एड्रेस आर्किटेक्चर में, 7 वें बिट यह दर्शाता है कि मैक एड्रेस सार्वभौमिक या स्थानीय रूप से सौंपा गया था या नहीं। 0 का मान बताता है कि पता सार्वभौमिक रूप से प्रशासित है। उदाहरण के लिए, जब आईएएनए एक एनआईसी कार्ड विक्रेता को संगठनात्मक रूप से विशिष्ट पहचानकर्ता (ओयूआई) प्रदान करता है, तो 7 वें बिट 0 होगा, यह दर्शाता है कि ओयूआई को सार्वभौमिक रूप से सौंपा गया था। क्या उपयोगकर्ता को अपने मैक पते को मैन्युअल रूप से बदलना चाहिए, यह 7 वां बिट 1 पर सेट होगा, यह दर्शाता है कि ईथरनेट पता स्थानीय रूप से प्रशासित था ।
PacketLife में इसके बारे में कुछ और जानकारी भी है ।
यह रूप में इस तरह वर्गीकृत हाथ सौंपा पतों पर किया जाता है prefix::1
, prefix::2
आदि स्थानीय रूप में।
मान लीजिए कि आप उपसर्ग में एक नेटवर्क स्थापित कर रहे हैं 2001:db8:dead:beef::/64
। आप शायद अपने अधिकांश नोड्स के लिए मैक-आधारित आईपी का उपयोग करेंगे। हालाँकि, कुछ नोड्स के लिए, जैसे कि DNS सर्वर, डायरेक्टरी सर्वर, आदि, आप उन एड्रेस का उपयोग करना चाहेंगे जो टाइप करने में आसान हों और मैक-आधारित एड्रेस की तुलना में याद रखने में आसान हों। DNS सर्वर के लिए, आप शायद उपयोग करना चाहते हैं
2001:db8:dead:beef::53
ध्यान दें कि U / L बिट 0 पर सेट है - जो बिट के व्युत्क्रम के कारण, होस्ट-आईडी को स्थानीय के रूप में वर्गीकृत करता है।
ईयूआई 64 का मतलब केवल मैक एड्रेस (48 बिट) होता है
..:FF:FE:..
इसके बीच में सभी 64 बिट्स को भरने के लिए। इसलिए नाम EUI-64। वास्तव में होने का मतलब है कि आप EUI-64 को संशोधित करते हैं जिसका मतलब है कि EUI-64 को 7 बिट के एक बिटफ्लिप के साथ जोड़ा गया है।
सातवें बिट को बदल दिया गया है क्योंकि मैक पते में इस 7 वें बिट ने एक स्थानीय (0) और वैश्विक (1) के बीच अंतर को इंगित किया है। इस अर्थ में स्थानीय है, उदाहरण के लिए, एक सीरियल इंटरफ़ेस।
चूंकि यह सब स्वचालित रूप से एक सार्वजनिक पता बनाने के लिए है जो सभी एक इंटरफेस पर होगा जो वैश्विक (मैक शर्तों में) है, जिसके परिणामस्वरूप 7 वें स्थान पर 1 होगा। उन्होंने उस बिट को बदल दिया है, इसलिए आपको छेद का पता नहीं लिखना है और आप "::" का शॉर्टहैंड नोटेशन लिख सकते हैं।
उदाहरण (RFC 2373 से):
...
The alternative would have been for these to be of the
form 0200:0:0:1, 0200:0:0:2, etc., instead of the much simpler ::1,
::2, etc.
संक्षिप्त उत्तर भले ही हर मैक एड्रैस IPv6 एड्रेस में समाप्त होता है, जिसमें IPv6 एड्रेस में किसी स्थान पर 0 से अधिक HEX नंबर होगा। इससे वहां जीरो होना संभव हो जाता है ताकि आप शॉर्टहैंड नोटेशन का उपयोग कर सकें।