మొత్తం LAN ను VPN టన్నెల్ వెనుక ఉంచడం సులభమైన భాగం; దూరపు వైపు ఆ క్లయింట్లను ఎలా చూస్తుందో నిర్ణయించడం సులభం కాదు. మాస్కరేడ్ ప్రతి LAN మూలాన్ని గేట్వే టన్నెల్ చిరునామాకు తిరిగి రాస్తుంది, కాబట్టి దూరపు చివర ఒకే భాగస్వామికి సమాధానం ఇస్తుంది. విధాన ఆధారిత రూటింగ్ అసలు చిరునామాలను నిలుపుకుంటుంది మరియు దూరపు వైపు వాటిని చేరుకునే విధానం తెలిసి ఉండాలని కోరుతుంది. రెండూ డిఫాల్ట్ కావు; ఎంపిక దూరపు వైపు ఎవరిది మరియు పరికరం వారీ గుర్తింపు ముఖ్యమా అనే దానిపై ఆధారపడి ఉంటుంది.

ఈ రెండు నిర్మాణాలు వేర్వేరు విషయాలను వాగ్దానం చేస్తాయి

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

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

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

మాస్కరేడ్: దూరపు వైపు ఒకే భాగస్వామి

మాస్కరేడ్ మార్గానికి ముఖ్యమైన క్రమం ఉంది. ఏ NAT నియమం ఉపయోగపడక ముందే ఫార్వర్డింగ్ ప్రారంభించి ఉండాలి, ఫిల్టర్ పట్టిక రెండు దిశలలోనూ దాటడానికి అనుమతించాలి, అప్పుడే టన్నెల్ ఇంటర్ఫేస్పై అనువాదం వర్తిస్తుంది.

sysctl -w net.ipv4.ip_forward=1
iptables -A FORWARD -i eth1 -o tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

క్లయింట్లకు ఇంకా గేట్వేకు మార్గం కావాలి. గేట్వే వారి డిఫాల్ట్ రౌటర్ కావచ్చు, లేదా వారు దూర ప్రిఫిక్స్ కోసం నిర్దిష్ట మార్గాన్ని మోసుకెళతారు; వేరే రౌటర్ డిఫాల్ట్గా ఉంటే, ఆ రౌటర్కు టన్నెల్ గమ్యస్థానాలకు స్థిర మార్గం కావాలి, లేకపోతే గేట్వే చూసే ముందే ప్యాకెట్ తప్పు హాప్కు వెళ్తుంది.

DNS ఒక వేరే నిర్ణయం. దూరపు వైపు రిజాల్వర్ తన సమాధానం క్లయింట్కు తిరిగి వెళ్లగలిగితే మాత్రమే సమాధానం ఇస్తుంది. మాస్కరేడ్లో ప్రశ్న గేట్వే నుండి వస్తున్నట్టు కనిపిస్తుంది, కాబట్టి రిజాల్వర్ తిరిగి వచ్చే మార్గం ఇప్పటికే నెరవేరింది; విధాన ఆధారిత రూటింగ్లో రిజాల్వర్కు ఇతర దూర సేవలా అదే తిరిగి వచ్చే మార్గం కావాలి.

విధాన ఆధారిత రూటింగ్: మూలాన్ని ఉంచండి, తిరిగి వచ్చే మార్గాన్ని జోడించండి

విధాన ఆధారిత రూటింగ్ ఒక పట్టికతో మరియు దాన్ని ఎంచుకునే నియమంతో మొదలవుతుంది. LAN ఇంటర్ఫేస్ నుండి లోపలికి వచ్చే ట్రాఫిక్ ప్రత్యేక పట్టికకు పంపబడుతుంది, ఆ పట్టిక టన్నెల్ ద్వారా డిఫాల్ట్ మార్గాన్ని మోస్తుంది. ప్రధాన పట్టిక తాకబడకుండా ఉంటుంది, కాబట్టి గేట్వే స్వయంగా సృష్టించే ట్రాఫిక్ వేరే మార్గాన్ని తీసుకోవచ్చు.

ip rule add iif eth1 table vpn
ip route add default dev tun0 table vpn

తర్వాత దూరపు వైపు LAN ప్రిఫిక్స్ను టన్నెల్ ద్వారా తిరిగి రూట్ చేయాలి. అది ఈ గేట్వేలో కాదు, దూర రౌటర్లో చేసే కాన్ఫిగరేషన్. ప్రధాన పట్టిక ఊహించిన దానికంటే వేరే ఇంటర్ఫేస్పై వచ్చే సమాధానాలను కూడా గేట్వే అంగీకరించాలి; కఠిన మోడ్ ఆ ప్యాకెట్లను పడేసినప్పుడు వదులైన రివర్స్-పాత్ ఫిల్టరింగ్ (rp_filter 2కి సెట్) సాధారణ సర్దుబాటు.

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

యాజమాన్యం మరియు దూరపు వైపు ఏమి లాగ్ చేస్తుంది అనే దాని ఆధారంగా నిర్ణయించండి

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

రెండు చివరలు మీవి అయి, దూర సేవలు మూల చిరునామాలపై పని చేస్తే, విధాన ఆధారిత రూటింగ్ తన అదనపు మార్గానికి అర్హత పొందుతుంది. అప్పుడు ఫైర్వాల్ నియమాలు, వినియోగదారు వారీ ప్రాప్యత మరియు ఆడిట్ లాగ్లు క్లయింట్లను వేరు చేయగలవు. దూరపు వైపు చేరుకోగలగడం మాత్రమే కావాలంటే, మాస్కరేడ్ సులభం మరియు తిరిగి వచ్చే మార్గ లోపాల వర్గాన్ని తొలగిస్తుంది.

హైబ్రిడ్ నిర్మాణాలు సాధారణం: మీ స్వంత నెట్వర్క్లో విధాన ఆధారిత రూటింగ్, ప్రదాత అంచున మాస్కరేడ్. ముఖ్యమైనది ఏ హాప్ అనువదిస్తుంది, ఏ హాప్ రూట్ చేస్తుంది అని రాసి ఉంచడం, ఎందుకంటే ఒక క్లయింట్ కోసం ప్రమాదవశాత్తు జోడించిన NAT నియమం అదే గొలుసులోని ప్రతి క్లయింట్ మూలాన్ని దాచుతుంది.

ఒక క్లయింట్ నుండి ధృవీకరించండి, తర్వాత రెండో క్లయింట్ నుండి

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

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

ఎంచుకున్న నమూనా, అనువదించిన లేదా నిలుపుకున్న మూలం మరియు తిరిగి వచ్చే మార్గం యజమానిని గేట్వే గమనికల్లో రాయండి. లేకపోతే క్లయింట్ లేదా టన్నెల్ జోడించే తదుపరి వ్యక్తి ఊహిస్తాడు, ఊహయే పనిచేస్తున్న LAN-నుండి-VPN అమరికను సగం అమరికగా మార్చే మార్గం.

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