मुख्य सामग्री पर जाएं
Change page

नेटवर्क पते

इथेरियम नोड्स को पीयर्स से जुड़ने के लिए कुछ बुनियादी जानकारी के साथ अपनी पहचान करनी होती है। यह सुनिश्चित करने के लिए कि कोई भी संभावित पीयर इस जानकारी की व्याख्या कर सके, इसे तीन मानकीकृत प्रारूपों में से एक में रिले किया जाता है जिसे कोई भी इथेरियम नोड समझ सकता है: multiaddr, enode, या इथेरियम नोड रिकॉर्ड्स (ENRs)। ENRs इथेरियम नेटवर्क पतों के लिए वर्तमान मानक हैं।

पूर्वापेक्षाएँ

इस पृष्ठ को समझने के लिए इथेरियम की नेटवर्किंग लेयर की कुछ समझ आवश्यक है।

Multiaddr

मूल इथेरियम नोड पता प्रारूप 'multiaddr' ('multi-addresses' का संक्षिप्त रूप) था। Multiaddr एक सार्वभौमिक प्रारूप है जिसे पीयर-टू-पीयर नेटवर्क के लिए डिज़ाइन किया गया है। पतों को कुंजी-मूल्य (key-value) जोड़े के रूप में दर्शाया जाता है जिसमें कुंजियों और मूल्यों को फॉरवर्ड स्लैश के साथ अलग किया जाता है। उदाहरण के लिए, IPv4 पते 192.168.22.27 वाले नोड के लिए multiaddr जो TCP पोर्ट 33000 पर सुन रहा है, कुछ इस तरह दिखता है:

/ip4/192.168.22.27/tcp/33000

एक इथेरियम नोड के लिए, multiaddr में नोड-ID (उनकी सार्वजनिक कुंजी का एक हैश) होता है:

/ip4/192.168.22.27/tcp/33000/p2p/5t7Nv7dG2d6ffbvAiewVsEwWweU3LdebSqX2y1bPrW8br

Enode

enode एक URL पता प्रारूप का उपयोग करके इथेरियम नोड की पहचान करने का एक तरीका है। हेक्साडेसिमल नोड-ID को URL के उपयोगकर्ता नाम (username) भाग में एन्कोड किया जाता है जिसे @ चिह्न का उपयोग करके होस्ट से अलग किया जाता है। होस्टनाम केवल IP पते के रूप में दिया जा सकता है; DNS नामों की अनुमति नहीं है। होस्टनाम अनुभाग में पोर्ट TCP लिसनिंग पोर्ट है। यदि TCP और UDP (खोज) पोर्ट भिन्न हैं, तो UDP पोर्ट को क्वेरी पैरामीटर "discport" के रूप में निर्दिष्ट किया जाता है।

निम्नलिखित उदाहरण में, नोड URL एक ऐसे नोड का वर्णन करता है जिसका IP पता 10.3.58.6, TCP पोर्ट 30303 और UDP खोज पोर्ट 30301 है।

enode://6f8a80d14311c39f35f516fa664deaaaa13e85b2f7493f37f6144d86991ec012937307647bd3b9a82abe2974e1407241d54947bbb39763a4cac9f77166ad92a0@10.3.58.6:30303?discport=30301

इथेरियम नोड रिकॉर्ड्स (ENRs)

इथेरियम नोड रिकॉर्ड्स (ENRs) इथेरियम पर नेटवर्क पतों के लिए एक मानकीकृत प्रारूप हैं। वे multiaddr और enodes का स्थान लेते हैं। ये विशेष रूप से उपयोगी हैं क्योंकि ये नोड्स के बीच अधिक सूचनात्मक आदान-प्रदान की अनुमति देते हैं। ENR में एक हस्ताक्षर, अनुक्रम संख्या और हस्ताक्षर उत्पन्न करने और मान्य करने के लिए उपयोग की जाने वाली पहचान योजना का विवरण देने वाले फ़ील्ड होते हैं। ENR को कुंजी-मूल्य जोड़े के रूप में व्यवस्थित मनमाने डेटा के साथ भी भरा जा सकता है। इन कुंजी-मूल्य जोड़ों में नोड का IP पता और उन उप-प्रोटोकॉल के बारे में जानकारी होती है जिनका उपयोग करने में नोड सक्षम है। सर्वसम्मति क्लाइंट बूट नोड्स की पहचान करने के लिए एक विशिष्ट ENR संरचना (opens in a new tab) का उपयोग करते हैं और इसमें एक eth2 फ़ील्ड भी शामिल होता है जिसमें वर्तमान इथेरियम फ़ोर्क और अनुप्रमाणन गॉसिप सबनेट (यह नोड को पीयर्स के एक विशेष सेट से जोड़ता है जिनके अनुप्रमाणन एक साथ एकत्रित होते हैं) के बारे में जानकारी होती है।

आगे की पढ़ाई