పూర్తి టన్నెల్ లేదా ఎండ్పాయింట్ మార్గం: VPN సర్వర్ను చేరుకోగలిగేలా ఉంచడం
టన్నెల్ తాను భర్తీ చేసే నెట్వర్క్ గుండా ప్రయాణిస్తుంది. హోస్ట్ మార్గ మినహాయింపును అప్లికేషన్ స్థాయి సాకెట్ గుర్తుతో పోల్చండి, ప్రతిది ఎప్పుడు విఫలమవుతుందో తెలుసుకోండి.
టన్నెల్ ద్వారా డిఫాల్ట్ మార్గాన్ని జోడించండి, టన్నెల్ యొక్క స్వంత ప్యాకెట్లు కూడా దానిని అనుసరిస్తాయి. అప్పుడు పట్టికలో తనను తాను ఓడించే నియమం ఉంటుంది. సర్వర్కు ఉన్న ఎన్క్రిప్టెడ్ కనెక్షన్ తాను స్థాపించడానికి ప్రయత్నిస్తున్న కనెక్షన్ లోపలే ప్రయాణించడానికి ప్రయత్నిస్తుంది.
రెండు యంత్రాంగాలు ఆ లూప్ను నిరోధిస్తాయి. ఒకటి రౌటింగ్ పట్టికలో కనిపిస్తుంది, మరొకటి అప్లికేషన్ లోపల నివసిస్తుంది.
లోపలి మరియు బయటి ట్రాఫిక్ వేర్వేరు నిర్ణయాలు
అప్లికేషన్ ప్యాకెట్ వర్చువల్ ఇంటర్ఫేస్లోకి ప్రవేశించి ఎన్క్యాప్సులేట్ అవుతుంది. ఫలితం సర్వర్ యొక్క పబ్లిక్ చిరునామాకు చిరునామా చేయబడిన కొత్త ప్యాకెట్. ఆ ప్యాకెట్కు భౌతిక నెట్వర్క్లో మార్గం అవసరం, ఎందుకంటే దానిలో ఏదీ టన్నెల్లోకి ప్రవేశించకూడదు.
రెండూ రౌటింగ్ నిర్ణయాలు, మొదటిది మాత్రమే టన్నెల్కు చెందుతుంది. క్లయింట్ సర్వర్ను కూడా కవర్ చేసే డిఫాల్ట్ మార్గాన్ని ఇన్స్టాల్ చేసినప్పుడు, బయటి ప్యాకెట్ కూడా పట్టుబడుతుంది.
లక్షణాలు తక్షణమైనవి మరియు పూర్తివి. హ్యాండ్షేక్ పూర్తయి తర్వాత ఏమీ ప్రవహించదు, లేదా మార్గం ఇన్స్టాల్ అయిన క్షణంలోనే కనెక్షన్ పడిపోతుంది. రెండు సందర్భాల్లోనూ keepalive ఇక బయటకు వెళ్లలేదు.
మొదటి ఎంపిక: ఎండ్పాయింట్ కోసం హోస్ట్ మార్గం
ప్రత్యక్ష విధానం అసలు గేట్వే ద్వారా సర్వర్ చిరునామాకు మార్గాన్ని జోడిస్తుంది. ఒక లైన్ మాత్రమే తీసుకుంటుంది. పట్టిక చదివే ఎవరికైనా అది కనిపిస్తుంది. మార్పు రికార్డులో వివరించడం కూడా సులభం.
దాని బలహీనత అంతర్లీన మార్గం మారినప్పుడు కనిపిస్తుంది. సేవ్ చేసిన మార్గం పాత నెట్వర్క్ యొక్క గేట్వే మరియు ఇంటర్ఫేస్ను పేర్కొంటుంది. Wi-Fi మార్పు తర్వాత ఆ గేట్వే ఉండకపోవచ్చు, మరియు మార్గం వెనుక ఉండిపోతుంది, సరిగ్గా కనిపిస్తుంది మరియు ఏమీ చేయదు.
# before the tunnel: which path reaches the endpoint?
ip route get 198.51.100.7
# pin it through the current gateway
ip route add 198.51.100.7/32 via 192.168.1.1 dev wlan0
# after the tunnel is up, confirm the pin survived
ip route get 198.51.100.7
హోస్ట్పేరు దీన్ని కష్టతరం చేస్తుంది. ఎండ్పాయింట్ అనేక చిరునామాలకు పరిష్కరించబడే పేరు అయితే, మినహాయింపు నిజంగా ఉపయోగించే చిరునామాను కవర్ చేయాలి. తర్వాతి శోధన మార్గం ఎప్పుడూ కవర్ చేయని దాన్ని తిరిగి ఇవ్వవచ్చు.
రెండవ ఎంపిక: సాకెట్ను రక్షించడం
మరో విధానం రౌటింగ్ పట్టికను ఎప్పుడూ తాకదు. క్లయింట్ టన్నెల్ మోసే సాకెట్ను గుర్తు పెట్టుతుంది లేదా రక్షిస్తుంది, కాబట్టి ఆపరేటింగ్ సిస్టమ్ విధానం ప్రకారం ఆ సాకెట్ ట్రాఫిక్ను టన్నెల్ వెలుపలికి పంపుతుంది. Android ఈ యంత్రాంగాన్ని నేరుగా VPN అప్లికేషన్లకు అందిస్తుంది. డెస్క్టాప్ క్లయింట్లు ఫైర్వాల్ గుర్తులు లేదా పరికరానికి బంధించే కాల్లతో సమానమైనవి అమలు చేస్తాయి.
ప్రయోజనం ఏమిటంటే మినహాయింపు సేవ్ చేసిన గేట్వే కాకుండా కనెక్షన్ను అనుసరిస్తుంది. నెట్వర్క్ మార్పు అంతర్లీన మార్గాన్ని తిరిగి రాస్తుంది, రక్షిత సాకెట్ దానితో పాటు కదులుతుంది ఎందుకంటే అది ఎప్పుడూ చిరునామాకు పిన్ చేయబడలేదు. మార్గ పట్టిక శుభ్రంగా ఉంటుంది.
ధర కనిపించేతనం. రౌటింగ్ పట్టికలో ఏదీ మినహాయింపును చూపదు, కాబట్టి హోస్ట్ మార్గం వెతికే సమీక్షకుడికి ఏమీ దొరకదు మరియు డిజైన్ సురక్షితం కాదని నిర్ధారించవచ్చు. రక్షణ క్లయింట్ కోడ్లో మరియు ఆ కోడ్ ఇన్స్టాల్ చేసే విధాన నియమాలలో నివసిస్తుంది.
రెండింటి మధ్య ఎంపిక
క్లయింట్ మద్దతు ఇచ్చినప్పుడు సాకెట్ స్థాయి యంత్రాంగాన్ని ఎంచుకోండి, ఎందుకంటే పిన్ చేసిన మార్గాన్ని విరిచే నెట్వర్క్ మార్పులను అది తట్టుకుంటుంది. మినహాయింపు ఇతర సాధనాలకు కనిపించాల్సి ఉంటే, లేదా క్లయింట్ మెరుగైనది ఏదీ ఇవ్వకపోతే హోస్ట్ మార్గాన్ని ఎంచుకోండి.
ఏ యంత్రాంగం సర్వర్ చిరునామా అసలు చేరుకోగలిగి ఉండాలనే అవసరాన్ని తొలగించదు. ప్రైవేట్ గేట్వేకు పబ్లిక్ వినే చిరునామా ఉంటుంది, టన్నెల్ వెలుపల ఉండాల్సింది ఆ చిరునామానే. దాని వెనుక ఉన్న అంతర్గత నెట్వర్క్లు టన్నెల్ ఏర్పడిన తర్వాతే చేరుకోగలిగేవి అవుతాయి.
మీరు ఏది ఎంచుకున్నా, దాన్ని టన్నెల్ కలిగి ఉన్న భాగం దగ్గర ఉంచండి. చేతితో జోడించిన అల్లాడే హోస్ట్ మార్గం తదుపరి నెట్వర్క్ వరకు పనిచేస్తుంది, ఆ తర్వాత అది రేపటి రహస్య అంతరాయం అవుతుంది.