నిష్క్రియ మోడ్‌లో వినియోగదారులను కనెక్ట్ చేయడానికి NAT ట్రావర్సల్‌ని ఉపయోగించడం

ఈ వ్యాసం ఎంట్రీలలో ఒకదానికి ఉచిత అనువాదం DC++ డెవలపర్ బ్లాగ్.

రచయిత అనుమతితో (అలాగే స్పష్టత మరియు ఆసక్తి కోసం), నేను దానిని లింక్‌లతో రంగులు వేసాను మరియు కొంత వ్యక్తిగత పరిశోధనతో అనుబంధించాను.

పరిచయం

ఈ సమయంలో కనెక్ట్ చేసే జతలో కనీసం ఒక వినియోగదారు తప్పనిసరిగా సక్రియ మోడ్‌లో ఉండాలి. యాక్టివ్ మోడ్ ఇరువైపులా కాన్ఫిగర్ చేయనప్పుడు NAT ట్రావర్సల్ మెకానిజం ఉపయోగకరంగా ఉంటుంది. ఇది సాధారణంగా ఫైర్‌వాల్ లేదా NAT పరికరం ఇన్‌కమింగ్ కనెక్షన్‌లను నిరోధించడం వల్ల జరుగుతుంది.

క్లయింట్‌లు ఇద్దరూ యాక్టివ్ మోడ్‌లో ఉంటే

ప్రారంభించే క్లయింట్ దాని స్వంత IP చిరునామా మరియు పోర్ట్‌ను కలిగి ఉన్న ఆదేశాన్ని పంపుతుంది $ConnectToMe మరొక క్లయింట్‌కు. ఈ డేటాను ఉపయోగించి, ఆదేశాన్ని అందుకున్న క్లయింట్ ఇనిషియేటర్‌తో కనెక్షన్‌ను ఏర్పరుస్తుంది.

క్లయింట్‌లలో ఒకరు నిష్క్రియ మోడ్‌లో ఉంటే

హబ్ ద్వారా, ఒక నిష్క్రియ క్లయింట్ A ఆదేశాన్ని పంపుతుంది $RevConnectToMe క్రియాశీల క్లయింట్ Bఇది $ConnectToMe కమాండ్‌తో ప్రతిస్పందిస్తుంది.

నిష్క్రియ మోడ్‌లో వినియోగదారులను కనెక్ట్ చేయడానికి NAT ట్రావర్సల్‌ని ఉపయోగించడం
సర్వర్‌గా S పైన ఉన్న సందర్భంలో DC హబ్ ఉంది

క్లయింట్‌లు ఇద్దరూ నిష్క్రియ మోడ్‌లో ఉంటే ADC హబ్

వివిధ NATల వెనుక ఉన్న క్లయింట్లు A и B హబ్‌లో చేరారు S.

నిష్క్రియ మోడ్‌లో వినియోగదారులను కనెక్ట్ చేయడానికి NAT ట్రావర్సల్‌ని ఉపయోగించడం
క్లయింట్ వైపు నుండి హబ్‌కి కనెక్షన్ ఈ విధంగా కనిపిస్తుంది A

హబ్ పోర్ట్ 1511లో కనెక్షన్‌లను అంగీకరిస్తుంది. క్లయింట్ A పోర్ట్ 50758 ద్వారా దాని ప్రైవేట్ నెట్‌వర్క్ నుండి అవుట్‌గోయింగ్ కనెక్షన్‌లను చేస్తుంది. హబ్, NAT పరికరం యొక్క చిరునామాను చూస్తుంది, దానితో పని చేస్తుంది మరియు ఖాతాదారులకు వారి ఐడెంటిఫైయర్‌ల ప్రకారం ప్రసారం చేస్తుంది.

కస్టమర్ A సర్వర్‌కి పంపుతుంది S క్లయింట్‌తో కనెక్ట్ కావడానికి సహాయం కోరుతూ సందేశం B.

Hub: [Outgoing][178.79.159.147:1511] DRCM AAAA BBBB ADCS/0.10 1649612991

నిష్క్రియ మోడ్‌లో కూడా, క్లయింట్ B, ఈ ఆదేశాన్ని స్వీకరించిన తర్వాత, NAT ద్వారా హబ్‌కి కనెక్ట్ చేయడానికి ఉపయోగించిన దాని ప్రైవేట్ పోర్ట్‌ను తప్పనిసరిగా నివేదించాలి.

Hub: [Incoming][178.79.159.147:1511] DNAT BBBB AAAA ADCS/0.10 59566 1649612991

ఈ సమాచారాన్ని స్వీకరించిన తర్వాత క్లయింట్ A వెంటనే క్లయింట్‌తో కనెక్షన్‌ని ఏర్పరచుకోవడానికి ప్రయత్నిస్తుంది B మరియు దాని స్వంత ప్రైవేట్ పోర్ట్ ని నివేదిస్తుంది.

Hub:		[Outgoing][178.79.159.147:1511]	 	D<b>RNT</b> AAAA BBBB ADCS/0.10 <b>50758</b> 1649612991

ఆసక్తి ఏమిటి? ఇప్పటికే ఉపయోగించిన ప్రైవేట్ పోర్ట్ ద్వారా పబ్లిక్ అడ్రస్‌కు కొత్త కనెక్షన్‌ని సృష్టించడం ద్వారా అదే కనెక్షన్ యొక్క ముగింపు బిందువును మార్చడం ఆసక్తి.

నిష్క్రియ మోడ్‌లో వినియోగదారులను కనెక్ట్ చేయడానికి NAT ట్రావర్సల్‌ని ఉపయోగించడం
పేకాట!

వాస్తవానికి, ఈ సందర్భంలో క్లయింట్ NAT B క్లయింట్ నుండి మొదటి కనెక్షన్ అభ్యర్థనను తిరస్కరించే ప్రతి హక్కును కలిగి ఉంది A, కానీ అతని స్వంత అభ్యర్థన ఈ కనెక్షన్ ద్వారా సృష్టించబడిన "రంధ్రం" లోకి వెళుతుంది మరియు కనెక్షన్ స్థాపించబడింది.

నిష్క్రియ మోడ్‌లో వినియోగదారులను కనెక్ట్ చేయడానికి NAT ట్రావర్సల్‌ని ఉపయోగించడం
ఆ హెచ్చరికతో మొత్తం ప్రక్రియకు అనువైన దృష్టాంతం ప్రోటోకాల్ సెషన్ ద్వారా తెరవబడిన పబ్లిక్ పోర్ట్‌లను ఉపయోగించదు NATS, అలాగే ప్రైవేట్ చిరునామాలు.

ఉపసంహారం

(అసలు) కథనాన్ని వ్రాసే సమయంలో, DC క్లయింట్‌లలో దాదాపు సగం మంది పాసివ్ మోడ్‌లో పని చేస్తున్నారు. దీని అర్థం సాధ్యమయ్యే అన్ని కనెక్షన్లలో నాలుగింట ఒక వంతు సాధ్యం కాదు.

ఇంకా DC++ NATని దాటవేయగలదుఇప్పటికే ఉన్న కనెక్షన్లను ఉపయోగించడం AS и BS నేరుగా క్లయింట్-క్లయింట్ కనెక్షన్‌ని ఏర్పాటు చేయడానికి, అయినప్పటికీ A и B పాసివ్ మోడ్‌లో ఉన్నాయి.

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి