నెట్వర్క్ చిరునామాలు
పీర్లకు కనెక్ట్ కావడానికి ఎథీరియం నోడ్లు తమను తాము కొంత ప్రాథమిక సమాచారంతో గుర్తించుకోవాలి. ఏదైనా సంభావ్య పీర్ ఈ సమాచారాన్ని అర్థం చేసుకోగలదని నిర్ధారించడానికి, ఇది ఏదైనా ఎథీరియం నోడ్ అర్థం చేసుకోగల మూడు ప్రామాణిక ఫార్మాట్లలో ఒకదానిలో ప్రసారం చేయబడుతుంది: multiaddr, enode, లేదా ఎథీరియం నోడ్ రికార్డ్స్ (ENRs). ENRలు ఎథీరియం నెట్వర్క్ చిరునామాలకు ప్రస్తుత ప్రమాణం.
ముందస్తు అవసరాలు
ఈ పేజీని అర్థం చేసుకోవడానికి ఎథీరియం యొక్క నెట్వర్కింగ్ లేయర్ గురించి కొంత అవగాహన అవసరం.
Multiaddr
అసలైన ఎథీరియం నోడ్ చిరునామా ఫార్మాట్ 'multiaddr' ('multi-addresses' కి సంక్షిప్త రూపం). Multiaddr అనేది పీర్-టు-పీర్ నెట్వర్క్ల కోసం రూపొందించబడిన ఒక సార్వత్రిక ఫార్మాట్. చిరునామాలు కీ-వాల్యూ జతలుగా సూచించబడతాయి, ఇక్కడ కీలు మరియు వాల్యూలు ఫార్వర్డ్ స్లాష్తో వేరు చేయబడతాయి. ఉదాహరణకు, TCP పోర్ట్ 33000 ని వింటున్న IPv4 చిరునామా 192.168.22.27 ఉన్న నోడ్ కోసం multiaddr ఈ విధంగా కనిపిస్తుంది:
/ip4/192.168.22.27/tcp/33000
ఎథీరియం నోడ్ కోసం, multiaddr లో నోడ్-ID (వారి పబ్లిక్ కీ యొక్క హాష్) ఉంటుంది:
/ip4/192.168.22.27/tcp/33000/p2p/5t7Nv7dG2d6ffbvAiewVsEwWweU3LdebSqX2y1bPrW8br
Enode
Enode అనేది URL చిరునామా ఫార్మాట్ని ఉపయోగించి ఎథీరియం నోడ్ను గుర్తించే ఒక మార్గం. హెక్సాడెసిమల్ నోడ్-ID అనేది URL యొక్క యూజర్నేమ్ భాగంలో ఎన్కోడ్ చేయబడుతుంది, ఇది @ గుర్తును ఉపయోగించి హోస్ట్ నుండి వేరు చేయబడుతుంది. హోస్ట్నేమ్ కేవలం 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 మరియు enode లను భర్తీ చేస్తాయి. నోడ్ల మధ్య మరింత సమాచార మార్పిడిని అనుమతించడం వల్ల ఇవి ప్రత్యేకంగా ఉపయోగపడతాయి. ENR లో ఒక సంతకం, సీక్వెన్స్ నంబర్ మరియు సంతకాలను రూపొందించడానికి మరియు ధృవీకరించడానికి ఉపయోగించే ఐడెంటిటీ స్కీమ్ను వివరించే ఫీల్డ్లు ఉంటాయి. ENR ని కీ-వాల్యూ జతలుగా నిర్వహించబడిన ఏకపక్ష డేటాతో కూడా నింపవచ్చు. ఈ కీ-వాల్యూ జతలలో నోడ్ యొక్క IP చిరునామా మరియు నోడ్ ఉపయోగించగల సబ్-ప్రోటోకాల్ల గురించిన సమాచారం ఉంటుంది. బూట్ నోడ్లను గుర్తించడానికి ఏకాభిప్రాయ క్లయింట్లు ఒక నిర్దిష్ట ENR నిర్మాణాన్ని (opens in a new tab) ఉపయోగిస్తాయి మరియు ప్రస్తుత ఎథీరియం ఫోర్క్ మరియు ధృవీకరణ గాసిప్ సబ్నెట్ (ఇది నోడ్ను ఒక నిర్దిష్ట పీర్ల సెట్కి కనెక్ట్ చేస్తుంది, వారి ధృవీకరణలు కలిసి సమగ్రపరచబడతాయి) గురించిన సమాచారాన్ని కలిగి ఉన్న eth2 ఫీల్డ్ను కూడా కలిగి ఉంటాయి.