ఎవరో VPN „UDPని బ్లాక్ చేస్తుంది“ అని నివేదిస్తారు, ఈ వాక్యం పూర్తిగా భిన్నమైన రెండు వాదనలను దాచుతుంది. ఒకటి యాక్సెస్ నెట్‌వర్క్ చూడగల రవాణా గురించి, మరొకటి టన్నెల్ లోపల డీక్రిప్ట్ అయిన తర్వాత యాప్ ప్యాకెట్ల గురించి. ఎన్‌క్రిప్ట్ చేసిన టన్నెల్‌ను ఎలాంటి కీ లేకుండా బయటి నుండి ఫిల్టర్ చేయవచ్చు, లోపలి UDP యాప్ ఫిల్టరింగ్‌తో ఎలాంటి సంబంధం లేని కారణాల వల్ల విఫలం కావచ్చు. సాక్ష్యం సేకరించే ముందు మీరు ఏ వాదనను పరీక్షిస్తున్నారో నిర్ణయించుకోండి.

రెండు హెడర్లు, ఒక పదం

NAT-traversal ఉన్న IPsec అమరికలో బయటి ప్యాకెట్ UDP, ఇది రెండు VPN ఎండ్‌పాయింట్ల మధ్య చిరునామా చేయబడింది, సాధారణంగా పోర్ట్ 4500 వద్ద. దాని లోపల ఎన్‌క్రిప్ట్ చేసిన పేలోడ్ టన్నెల్ పంపే ప్రతిదాన్ని మోస్తుంది, అది స్వయంగా TCP లేదా UDP కావచ్చు. కాబట్టి UDP అనే పదం రెండుసార్లు వస్తుంది, వేరే అర్థం మరియు వేరే దృశ్యమానతతో.

మధ్యవర్తి నెట్‌వర్క్ బయటి హెడర్‌ను చూస్తుంది, లోపలి నుండి ఏమీ చూడదు. అది బయటి ప్రవాహాన్ని అనుమతించవచ్చు, రూపొందించవచ్చు లేదా పడవేయవచ్చు, దానికి ఏదీ డీక్రిప్ట్ చేయాల్సిన అవసరం లేదు. ఈ అసమానతే రెండు వాదనలు గందరగోళానికి గురికావడానికి పూర్తి కారణం: ఒకే పదం నెట్‌వర్క్ ఫిల్టర్ చేసేదాన్ని మరియు యాప్ పంపేదాన్ని వివరిస్తుంది. ఏదైనా కనుగొన్న విషయాన్ని నమోదు చేసినప్పుడు పదం పక్కన పొరను రాయండి, గందరగోళం చాలావరకు మాయమవుతుంది.

లోపలి హెడర్ స్వీకరించే ఎండ్‌పాయింట్ వద్ద, డీక్రిప్షన్ తర్వాత మాత్రమే కనిపిస్తుంది. ఆ క్షణం నుండి ప్యాకెట్ మరేదైనా వలె ఫార్వర్డ్ అవుతుంది, మార్గాలు, విధానం మరియు ఎండ్‌పాయింట్ స్వంత ఫిల్టరింగ్‌కు లోబడి. ఇవి వేర్వేరు పరికరాలు తీసుకునే వేర్వేరు నిర్ణయాలు.

నెట్‌వర్క్ ఇంకా ఏమి చూడగలదు

ఎన్‌క్రిప్షన్ పేలోడ్ మరియు లోపలి రవాణా హెడర్‌ను దాస్తుంది, ప్రవాహం ఉందనే వాస్తవాన్ని కాదు. ఎండ్‌పాయింట్ చిరునామాలు, పోర్టులు, ప్యాకెట్ పరిమాణాలు మరియు సమయం కనిపిస్తూనే ఉంటాయి, అవి ట్రాఫిక్‌ను అంచనా పద్ధతిలో వర్గీకరించడానికి లేదా నిర్దిష్ట గమ్యాన్ని బ్లాక్ చేయడానికి సరిపోతాయి.

sudo tcpdump -ni eth0 'udp port 4500'
sudo tcpdump -ni tun0 'udp port 5201'

మొదటి క్యాప్చర్ భౌతిక ఇంటర్‌ఫేస్‌పై బయటి ప్రవాహాన్ని చూపిస్తుంది, రెండవది టన్నెల్ ఇంటర్‌ఫేస్‌పై లోపలి ప్రవాహాన్ని చూపిస్తుంది. రెండింటినీ ఒకేసారి నడపడం ప్రశ్నకు నేరుగా సమాధానం ఇస్తుంది: బయటి ప్రవాహం ఉండి లోపలిది లేకపోతే, యాప్ టన్నెల్‌లోకి ఏమీ పంపలేదు. రెండూ ఉండి ఏమీ తిరిగి రాకపోతే, సమస్య టన్నెల్ ఆవల ఉంది, గమ్యంలో లేదా తిరుగు మార్గంలో.

RFC 3948 బయటి UDP ఎన్‌క్యాప్సులేషన్‌ను నిర్వచిస్తుంది, ESP స్పెసిఫికేషన్ దాని లోపలి రక్షిత అమరికను నిర్వచిస్తుంది. రెండు పత్రాలలో ఏదీ యాక్సెస్ నెట్‌వర్క్ బయటి ప్రవాహాన్ని దాటిస్తుందని హామీ ఇవ్వదు, కాబట్టి లోపలి గురించి ఏదైనా సిద్ధాంతానికి ముందు బయటి టుపుల్‌పై చేరుకోగలిగే పరీక్ష చేయడం విలువైనది. బ్లాక్ చేయబడిన బయటి టుపుల్ ఎప్పటికీ ఏర్పడని టన్నెల్‌ను ఇస్తుంది, ఏర్పడి తర్వాత ఒక యాప్‌ను కోల్పోయే టన్నెల్ కాదు.

పనిచేస్తున్న టన్నెల్ లోపల ఒక UDP యాప్ ఎందుకు విఫలమవుతుంది

వెబ్ యాప్‌ను మోసుకెళ్లే కానీ UDP యాప్‌ను మోసుకెళ్లని టన్నెల్‌కు అనేక నమ్మదగిన వివరణలు ఉన్నాయి, ISP లోపలి ప్రోటోకాల్ ఫిల్టరింగ్ మొదటిది కాదు. అత్యంత సాధారణమైనది కవరేజ్: రెండు యాప్‌లు ఒకే టన్నెల్‌లోకి కలిసి ప్రవేశించవు, ఎందుకంటే UDP గమ్యానికి మార్గం లేదు లేదా క్లయింట్ విభజిత టన్నెల్ నియమాలు దాన్ని మినహాయిస్తాయి.

రెండవది ఎండ్‌పాయింట్. ప్రోటోకాల్ జాబితాను అనుమతించే VPN సర్వర్, గమ్యంలోని ఫైర్‌వాల్, లేదా ఆశించిన పోర్ట్‌లో ఎప్పుడూ వినని సేవ — అన్నీ నెట్‌వర్క్ బ్లాక్‌లాగానే కనిపించే సమయ ముగింపును సృష్టిస్తాయి.

మూడవది ప్యాకెట్ పరిమాణం. UDP యాప్‌లు తరచుగా వెబ్ అభ్యర్థన కంటే పెద్ద డేటాగ్రామ్‌లను పంపుతాయి, ఎన్‌క్యాప్సులేషన్ ఉపయోగించగల MTUని తగ్గిస్తుంది, కాబట్టి విజయవంతమైన హ్యాండ్‌షేక్ తర్వాత మొదటి పూర్తి పరిమాణ పేలోడ్‌పై నిశ్శబ్దం రావచ్చు. చిన్న ప్యాకెట్లు దాటి పెద్దవి మాయమవడం వల్ల ఈ నమూనాను బ్లాక్‌గా తప్పుగా చదవడం సులభం. వేగవంతమైన MTU పరీక్ష ఒక నిమిషం లోపు దీన్ని తీర్మానిస్తుంది, సమాధానం సాధారణంగా నెట్‌వర్క్ ఫిల్టర్ కాదు, చిన్న పేలోడ్ లేదా సరిదిద్దిన MSS.

ping -M do -s 1400 -c 2 10.60.0.20
iperf3 -u -c 10.60.0.20 -p 5201 -b 1M -t 5

మొదటి ఆదేశం పెద్ద ప్యాకెట్ ఫ్రాగ్మెంటేషన్ ఆఫ్ చేసిన స్థితిలో మార్గాన్ని దాటుతుందో లేదో పరీక్షిస్తుంది, ఇది MTU సమస్యను త్వరగా వెల్లడిస్తుంది. రెండవది చిన్న, పరిమిత UDP ప్రవాహాన్ని పంపి నష్టం మరియు జిట్టర్‌ను నివేదిస్తుంది. ప్రారంభమై తర్వాత ఆగిపోయే ప్రవాహం బ్లాక్ వైపు కాదు, పరిమాణం వైపు సూచిస్తుంది.

ప్రోటోకాల్ కాదు, పొరను నివేదించండి

కనుగొన్న విషయాన్ని మూడు రూపాలలో ఒకదానిలో రాయండి: బయటి డెలివరీ విఫలమైంది, లోపలి ఫార్వర్డింగ్ విఫలమైంది, లేదా యాప్ విఫలమైంది. ప్రతి ఒక్కటి వేరే యజమాని కలిగి ఉంటుంది, వాటిని కలపడం టికెట్‌ను తప్పు బృందానికి పంపుతుంది.

స్థానిక పోర్ట్‌ను మార్చడం దూరపు చివరలో సరిపోలే శ్రోతను సృష్టించలేదు, కాబట్టి సహాయపడుతున్నట్లు కనిపించే క్లయింట్-వైపు పరిష్కారం సాధారణంగా అసలు గమ్యం తప్పు అనడానికి సాక్ష్యం. అదే విధంగా, అందించిన ప్రత్యామ్నాయ ప్రొఫైల్ చేరుకోగలిగే సామర్థ్యం గురించి ఏదో నిరూపిస్తుంది, యాప్ సరిగ్గా కాన్ఫిగర్ చేయబడిందా అనే దాని గురించి ఏమీ కాదు.

అనుమానాన్ని పరిశీలన నుండి వేరుగా ఉంచండి. ట్రాఫిక్ విశ్లేషణ డీక్రిప్ట్ చేయకుండానే ప్రవాహం ఏమిటో సూచించగలదు, అది ఉపయోగకరమైన కనుగొన్న విషయం, కానీ అది లోపలి హెడర్ చదవడంతో సమానమైన వాదన కాదు. మీ వద్ద నిజంగా ఏది ఉందో పేర్కొనండి.

సంబంధిత వ్యాసాలు