అనేక యాప్ కనెక్షన్లు ఒకే OpenVPN సెషన్ను పంచుకోవడానికి కారణం
ఒక బాహ్య UDP సంభాషణ మార్గాలు దానిలోకి పంపే ప్రతి అంతర్గత ప్రవాహాన్ని మోసుకెళ్తుంది. అంతర్గత పోర్టులు మరియు ప్రోటోకాల్లు నిలిచి ఉంటాయి; స్థిరంగా ఉండేది బాహ్య ట్యూపుల్ మాత్రమే.
ఒక బ్రౌజర్ HTTPS పేజీని లోడ్ చేస్తోంది, ఒక SSH క్లయింట్ మరో సర్వర్ను చేరుతోంది మరియు ఒక పరిష్కర్త ప్రశ్నకు సమాధానమిస్తోంది — అన్నీ ఒకే OpenVPN సెషన్ ద్వారా. భౌతిక ఇంటర్ఫేస్లో మీరు ఒక సంభాషణ చూస్తారు; సొరంగం లోపల మూడు చూస్తారు. రెండు దృక్కోణాలూ సరైనవే, ఎందుకు అనేది తెలుసుకోవడమే ఉపయోగకరమైన మరియు గందరగోళపరిచే క్యాప్చర్ మధ్య తేడా. ఒక అంతర్గత ప్రవాహాన్ని సాకెట్ నుండి తీగ వరకు అనుసరించండి, పొరల వ్యవస్థ అమూర్తంగా ఉండదు.
ఒక బాహ్య సంభాషణ, అనేక అంతర్గత ప్రవాహాలు
ప్రతి అనువర్తనం తన సొంత సాకెట్ను తెరుస్తుంది, కెర్నల్ దానికి మూల చిరునామా, మూల పోర్టు, గమ్య చిరునామా, గమ్య పోర్టు మరియు ప్రోటోకాల్ అనే ఐదు-అంశాల ట్యూపుల్ ఇస్తుంది. ఆ ట్యూపుల్స్ ఏ సొరంగం కూడా ప్రవేశించక ముందే ఉంటాయి. తర్వాత రూటింగ్ అవన్నీ సొరంగ పరికరం ద్వారా బయటకు వెళ్తాయని నిర్ణయిస్తుంది, కాబట్టి OpenVPN కు అప్పగించిన ప్యాకెట్ ఇప్పటికీ లోపల అసలు శీర్షికలను మోసుకెళ్తుంది. OpenVPN ఆ అంతర్గత ప్యాకెట్ను గుప్తీకరించి ఫలితాన్ని సహచరుడితో ఒకే బాహ్య UDP లేదా TCP సంభాషణలో చుట్టుతుంది. కాబట్టి బాహ్య సంభాషణ ఒకటి, లోపలి ప్రవాహాలు అనువర్తనాలు తెరిచినన్ని.
ఏదీ కూలిపోదు. అంతర్గత ట్యూపుల్స్ మొదటి నుండి చివరి వరకు నిలిచి ఉంటాయి, అందుకే దూరపు వైపు ఇప్పటికీ మూడు ప్రవాహాలను వేరు చేయగలదు.
స్థిరంగా ఉండే పోర్టు
స్థిరంగా ఉండేది బాహ్య ట్యూపుల్: మీ చిరునామా, క్లయింట్ బంధించిన స్థానిక పోర్టు, సహచరుడి చిరునామా మరియు కాన్ఫిగర్ చేసిన సేవా పోర్టు. మార్గంలోని ఫైర్వాల్ లేదా NAT అనుమతించవలసినది ఈ ట్యూపుల్నే, అప్లింక్లోని క్యాప్చర్ చూపించేది కూడా ఇదే. మళ్లీ కనెక్ట్ అయిన లేదా నెట్వర్క్ మారిన తర్వాత మారేది కూడా ఇదే, ఎందుకంటే క్లయింట్ మరో స్థానిక పోర్టును బంధించవచ్చు. ఒక సొరంగం అంటే ఎప్పటికీ ఒక స్థిర మూల పోర్టు అని కాదు.
అంతర్గత పోర్టులే చివరి బిందువులకు ముఖ్యం. బాహ్య రవాణా ఆపరేటర్ కాన్ఫిగర్ చేసిన పోర్టులో కూర్చున్నా HTTPS ప్రవాహం సొరంగం లోపల గమ్య పోర్టు 443ను ఉంచుకుంటుంది. అనువర్తన చివరి బిందువులు బాహ్య పోర్టు గురించి ఎప్పటికీ తెలియవు.
దూర మూలలో డీక్యాప్సులేషన్ ఏమి మారుస్తుంది
సహచరుడి వద్ద బాహ్య పొర తీసివేయబడుతుంది, మిగిలేది అంతర్గత ప్యాకెట్. అక్కడి నుండి ఫార్వార్డింగ్ మరియు ప్రాప్యత విధానం అంతర్గత గమ్యం మరియు ప్రోటోకాల్కు వర్తిస్తాయి. వెబ్ సర్వర్ ఇప్పటికీ HTTPS కనెక్షన్ పొందుతుంది, SSH డీమన్ ఇప్పటికీ SSH పొందుతుంది, పరిష్కర్త ఇప్పటికీ ప్రశ్న పొందుతుంది.
అందుకే బాహ్య రవాణాను అనుమతించే నియమం అంతర్గత సేవను అనుమతించే నియమం కాదు. మొదటిది మార్గాన్ని వివరిస్తుంది; రెండవది అనుమతిని వివరిస్తుంది.
బాహ్య TCP అంటే ఒక ప్రవాహం, ఒక కనెక్షన్ కాదు
బాహ్య రవాణా UDP అయినప్పుడు ప్రతి అంతర్గత ప్రవాహం గతి స్వతంత్రం: పోయిన డేటాగ్రామ్ తన స్వంత పునఃప్రసారం వరకు ఒక బదిలీని ప్రభావితం చేస్తుంది. బాహ్య రవాణా TCP అయినప్పుడు అన్ని అంతర్గత ప్రవాహాలు ఒకే విశ్వసనీయ బైట్ ప్రవాహాన్ని పంచుకుంటాయి.
ఆ పంచుకున్న ప్రవాహమే ప్రజలు మరచిపోయే భాగం. పునరుద్ధరణ ఒకసారి, అన్నింటికీ జరుగుతుంది, కాబట్టి ఒక పోయిన విభాగం లోపల మల్టిప్లెక్స్ చేయబడిన ప్రతి అనువర్తన ట్రాఫిక్ను ఆలస్యం చేస్తుంది. చివరి బిందువుల వద్ద ఇప్పటికీ అనేక కనెక్షన్లు, తీగపై ఒక కనెక్షన్ ఉంటాయి, మరియు తీగపైనే వరుస తల ప్రభావం నివసిస్తుంది. వినిపిస్తున్న పోర్టుల సంఖ్య దీని గురించి ఏమీ చెప్పదు, అందుకే సొరంగ పనితీరు గురించి ఆలోచించడానికి పోర్టులు లెక్కించడం బలహీనమైన మార్గం.
మీ స్వంత సెటప్ను ఖచ్చితంగా వివరించండి
యంత్రం అన్నింటినీ ఒక పోర్టు ద్వారా పంపుతుందని చెప్పే బదులు, ఎంచుకున్న అంతర్గత ట్రాఫిక్ మరియు దానిని మోసుకెళ్లే నిర్దిష్ట బాహ్య రవాణాను పేర్కొనండి. స్థానిక సేవలు, రెండవ సొరంగం మరియు మరో చిరునామా కుటుంబం ఈ సంభాషణలోకి ఎప్పటికీ రాని ప్రవాహాలను సృష్టిస్తాయి. అప్లింక్లోని క్యాప్చర్ బాహ్య ట్యూపుల్ను చూపిస్తుంది; సొరంగం లోపలి క్యాప్చర్ అంతర్గత వాటిని చూపిస్తుంది.
రెండింటినీ తీసుకుని, సమయ ముద్రలను పక్కపక్కన పెట్టండి. ఏ అనువర్తనం ఏ అంతర్గత ప్రవాహాన్ని సృష్టించిందో నిరూపించాలంటే, హోస్ట్లోని సాకెట్ పట్టిక మెరుగైన సాధనం, ఎందుకంటే అది పోర్టులను నేరుగా ప్రక్రియలతో అనుసంధానిస్తుంది. తర్వాత మీరు గమనించిన బాహ్య ట్యూపుల్ మరియు గమనించిన క్షణాన్ని రాసుకోండి, ఎందుకంటే మళ్లీ కనెక్ట్ అయిన తర్వాతి క్యాప్చర్ చట్టబద్ధంగా వేరే సంఖ్యలను చూపవచ్చు.