OpenWrt లో మొత్తం LAN కోసం OpenVPN క్లయింట్: పని చేసే క్రమం
ఇంటర్ఫేస్ యాజమాన్యం, జోన్ విధానం, మాస్కరేడ్ మరియు ప్రతి SSID కి పట్టికలు — ఇవి నాలుగు వేర్వేరు పనులు. వాటిని క్రమంగా చేయండి, అప్పుడు మొత్తం రౌటర్ను కప్పే సొరంగం మీతో పోరాడటం ఆపుతుంది.
రౌటర్ మొత్తం LAN ను ఒకే సొరంగం వెనుక ఉంచడానికి నాలుగు స్వతంత్ర పనులు అవసరం. సొరంగ పరికరానికి ఒక యజమాని, ఒక ఫైర్వాల్ జోన్, పై లింక్ వైపు ఒక అనువాద లక్ష్యం, మరియు కొన్ని క్లయింట్లు VPN బయట ఉండాలంటే మూల చిరునామా ఆధారంగా రూటింగ్ అవసరం. కనెక్ట్ అవుతుంది కానీ ఏమీ ప్రయాణించదు అనే సొరంగంలో సాధారణంగా ఈ నాలుగింటిలో ఒకటి లేకుండా ఉంటుంది. ఆధారపడే క్రమంలో పని చేయడం అంటే చివరిలో వచ్చే వైఫల్యం మీరు ఇప్పుడు మార్చిన దశకే చెందుతుంది. క్రింది ప్రతి దశ మీరు చూడగలిగే దానితో ముగుస్తుంది, ఇది తదుపరి దశను ఊహగా మారకుండా ఆపుతుంది.
సొరంగం ఏమి పంచుకుంటుందో నిర్ణయించండి
Wi-Fi మరియు DHCP పంపిణీ చేసే రౌటర్ క్లయింట్ను తానే నడపగలదు. ఇది ప్రతి పరికరానికి ప్రత్యేక సెటప్ లేకుండా అన్ని కనెక్ట్ అయిన పరికరాలను సొరంగం వెనుక ఉంచుతుంది, చిన్న సైట్లలో చాలా వరకు ఈ అమరికనే కోరుతాయి. సొరంగం పడిపోయినప్పుడు అత్యధిక ప్రభావం కూడా ఈ అమరికలోనే ఉంటుంది, ఎందుకంటే ప్రతి పరికరం ఒకేసారి తన మార్గాన్ని కోల్పోతుంది. LAN లో బయటకు వెళ్లే పని చేసే మార్గం ఏదీ మిగలదు.
మొదటి దాని వెనుక రెండవ రౌటర్, తన సొంత సబ్నెట్తో క్లయింట్ను నడుపుతూ, సొరంగాన్ని తన పరికరాలకే పరిమితం చేస్తుంది. దాన్ని తొలగించడం సులభం, దాన్ని వారసత్వంగా పొందేవారికి వివరించడం కూడా సులభం. ధర ఏమిటంటే, మార్గం లేదా పోర్ట్ ఫార్వర్డ్ లేకుండా రెండు వైపుల మధ్య చేరుకోవడం ఉండదు.
ఏ విధంగా అయినా, LAN సబ్నెట్లను వేరుగా ఉంచండి. ఒకే పరిధులు ఒక వైపును నేరుగా కనెక్ట్ అయినట్టు చూపుతాయి, మరియు దాని నుండి ఏర్పడే నల్ల రంధ్రం VPN లోపంగా చదవబడుతుంది గంటల పాటు.
సొరంగానికి యజమానిని ఇవ్వండి
సొరంగాన్ని పేరు, పరికరం మరియు సొంత ప్రోటోకాల్ లేని నెట్వర్క్ ఇంటర్ఫేస్గా ప్రకటించండి. తర్వాత నెట్వర్క్ వ్యవస్థ పరికరాన్ని సృష్టించి నిర్వహిస్తుంది, ఆ తర్వాత అన్నీ ఇంటర్ఫేస్ను పరికరం ద్వారా కాకుండా పేరు ద్వారా సూచిస్తాయి. అదే జోన్కు దాన్ని కనుగొనేలా చేస్తుంది.
ఒకే పరికరాన్ని రెండు చోట్ల సృష్టించవద్దు. ప్రకటించిన ఇంటర్ఫేస్ పక్కన చేతితో చేసిన సొరంగం, ఉనికిలో ఉన్నా ఏ జోన్లో లేని పరికరాన్ని, లేదా మళ్లీ లోడ్ అయినప్పుడు మాయమయ్యే పరికరాన్ని సృష్టిస్తుంది. రెండూ క్లయింట్ విఫలమైనట్టు కనిపిస్తాయి, రెండూ నిజమైన కారణాన్ని చెప్పే లోపాన్ని ఇవ్వవు. ప్రకటన మార్గాన్ని ఎంచుకుని చేతితో చేసినదాన్ని తొలగించండి.
నెట్వర్క్, ఫైర్వాల్ మరియు VPN కాన్ఫిగరేషన్లో పేరు ఒకేలా ఉంచండి. జోన్ నెట్వర్క్లను పేరుతో జాబితా చేస్తుంది, కాబట్టి ఒక టైపింగ్ పొరపాటు సొరంగాన్ని ప్రతి జోన్ బయట ఉంచుతుంది, ఇంటర్ఫేస్ మాత్రం ఆరోగ్యంగా కనిపిస్తుంది. విధానం లేని ఆరోగ్యకరమైన ఇంటర్ఫేస్ గుర్తించడం అత్యంత కష్టమైన స్థితి.
జోన్ చేయండి, తర్వాత దానిలోకి ఫార్వర్డ్ చేయండి
ఫైర్వాల్ జోన్ అంటే విధానం నివసించే చోటు: ఇన్పుట్, అవుట్పుట్, ఫార్వర్డ్ మరియు మాస్కరేడ్. ఏ జోన్లో లేని సొరంగం మీరు ఎంచుకోని డిఫాల్ట్ల ద్వారా నడుస్తుంది, అది రౌటర్ క్లయింట్కు అరుదుగా అవసరం. క్రింది బ్లాక్లు ఇంటర్ఫేస్ను ప్రకటించి, దాన్ని జోన్లో ఉంచి, LAN ట్రాఫిక్ను ఆ జోన్లోకి అనుమతిస్తాయి.
config interface 'vpn'
option device 'tun0'
option proto 'none'
config zone
option name 'vpn'
list network 'vpn'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
config forwarding
option src 'lan'
option dest 'vpn'
21.02 కంటే పాత విడుదలల్లో అదే ఇంటర్ఫేస్ లైన్ option ifname అని రాయబడుతుంది, కాబట్టి అతికించే ముందు ఇన్స్టాల్ చేసిన ఫర్మ్వేర్ ఏ రూపాన్ని అర్థం చేసుకుంటుందో తనిఖీ చేయండి. ఫార్వర్డింగ్ బ్లాక్ అంటే LAN ట్రాఫిక్ సొరంగాన్ని అసలు ఉపయోగించడానికి అనుమతి. అది లేకుండా పరికరం ఆన్లో ఉంది, క్లయింట్ కనెక్ట్ అయింది, ఏ LAN హోస్ట్ సొరంగానికి చేరుకోదు. రౌటర్ క్లయింట్లపై అత్యంత సాధారణ ఫిర్యాదు కనెక్ట్ అయింది కానీ ఇంటర్నెట్ లేదు అనేది.
VPN జోన్లోని మాస్కరేడ్ ప్యాకెట్ బయటకు వెళ్లే ముందు ప్రతి LAN చిరునామాను రౌటర్ సొరంగ చిరునామాలోకి కుదిస్తుంది. ఇది అవతలి వైపు మీ సబ్నెట్కు తిరిగి వెళ్లే మార్గం అవసరాన్ని తొలగిస్తుంది.
అవతలి వైపు ఇప్పటికే మీ LAN కు మార్గం ఇస్తుంటే, మాస్కరేడ్ ఆఫ్ చేయడం మూల చిరునామాలను కనిపించేలా ఉంచి ప్రతి క్లయింట్ లాగ్లను అర్థవంతం చేస్తుంది. ఒకదాన్ని ఎంచుకుని ఏది అని రాసి పెట్టుకోండి, ఎందుకంటే రెండు ఎంపికలు తర్వాత వేర్వేరు మద్దతు ప్రశ్నలు తెస్తాయి. డిఫాల్ట్ LAN-నుండి-WAN ఫార్వర్డింగ్ను తొలగించడం దాని సొంత పరిణామం ఉన్న వేరే నిర్ణయం. దాన్ని తీసేస్తే రౌటర్ సొంత ఇంటర్నెట్ యాక్సెస్ కూడా దానితో పోతుంది.
NAT లో నిజమైన పై లింక్ను పేరు పెట్టండి
అనువాద నియమం చేతతో రాసే ఫర్మ్వేర్లో, బయటకు వెళ్లే ఇంటర్ఫేసే పాడయ్యే ఫీల్డ్. నియమం vlan2 అని పేరు పెట్టినా సెషన్ ppp0 లో ముగిసినప్పుడు ఏమీ చేయదు. ఇంటర్ఫేస్ అసలు లేని నియమం ప్రైవేట్గా ఉండాల్సిన ట్రాఫిక్ను కూడా అనువదించగలదు. రెండు పొరపాట్లు తమను తాము ప్రకటించుకోవు, ఎందుకంటే సొరంగం పని చేస్తూనే ఉంటుంది.
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
ఆ నియమంలోని ppp0 ను ip route లేదా నడుస్తున్న ఇంటర్ఫేస్ల జాబితా నుండి వచ్చే ఇంటర్ఫేస్తో మార్చి, తర్వాత LAN హోస్ట్ పేజీ లోడ్ చేస్తున్నప్పుడు కౌంటర్ను చూడండి. ఒకే ప్రొవైడర్ ఉన్న రౌటర్లో పై లింక్ కోసం ఒక మాస్కరేడ్ నియమం సాధారణంగా సరిపోతుంది. సొరంగ ఇంటర్ఫేస్ కోసం రెండవ నియమం మొదటి దానికి ప్రత్యామ్నాయం కాదు.
తర్వాత సొరంగంలోకి ఏమి ప్రవేశిస్తుందో నిర్ణయించే క్లయింట్ ఎంపికలను జోడించండి. redirect-gateway సూచన క్లయింట్ ఇంటర్నెట్ ట్రాఫిక్ను VPN ద్వారా పంపుతుంది, అది లేకుండా సొరంగం సర్వర్ నెట్టే మార్గాలనే మోసుకెళ్తుంది. DNS ను తాకే ముందు ఏర్పడిన రూట్ పట్టికను తనిఖీ చేయండి.
రెండవ పట్టికతో Wi-Fi ను విభజించండి
ఒక రూటింగ్ పట్టిక రెండు డిఫాల్ట్లను ఉంచలేదు. కాబట్టి సొరంగాన్ని దాటవేయాల్సిన రెండవ SSID కి దాని సొంత సబ్నెట్ మరియు సొంత పట్టిక అవసరం. సొరంగ SSID కి దాని సొంత పరిధిని ఇవ్వండి, తర్వాత పట్టికను ఎంచుకునే నియమంతో ఆ పరిధిని మాత్రమే సొరంగంలోకి పంపండి.
OpenWrt లోని విధాన రూటింగ్ ప్యాకేజీలు సరిగ్గా ఆ కలయికను వ్యక్తపరుస్తాయి. చేతితో కూడా చేయవచ్చు — మూల నియమం మరియు డిఫాల్ట్ సొరంగ పరికరం వైపు చూపే పట్టికతో.
రెండు నెట్వర్క్ల నుండి విభజనను తనిఖీ చేయండి. సొరంగ SSID లోని క్లయింట్ VPN నిష్క్రమణ చిరునామాను చూపాలి, సాధారణ SSID లోని క్లయింట్ ప్రొవైడర్ చిరునామాను చూపాలి. రెండూ ఒకేలా కనిపిస్తే, నియమం తప్పు మూలంతో సరిపోతుంది లేదా పట్టికే అడగబడదు. మళ్లీ కనెక్ట్ అయిన తర్వాత కూడా పరీక్షించండి, ఎందుకంటే ఇంటర్ఫేస్ పేరుపై ఆధారపడిన నియమం పరికరానికి కొత్త నంబర్ వచ్చినప్పుడు విరిగిపోతుంది.
గడియారం మరియు పరికర జెండాపై అనుమానించండి
ఈ persist-tun జెండా రీస్టార్ట్ల మధ్య సొరంగ పరికరాన్ని అదే చోట ఉంచుతుంది. ఇది సర్వర్కు సరిపోతుంది, స్థితి మొదటి నుండి తిరిగి నిర్మించాల్సిన క్లయింట్ను గందరగోళపరుస్తుంది. రౌటర్ క్లయింట్ సమస్యను పరిష్కరిస్తున్నప్పుడు దాన్ని తీసేయండి, ఎందుకంటే విఫలమైన చర్చల నుండి బయటపడిన పరికరం ఏ దశ నిజంగా విరిగిందో దాస్తుంది. క్లయింట్ నమ్మకంగా కనెక్ట్ అయిన తర్వాతే దాన్ని తిరిగి పెట్టండి, అంతకు ముందు కాదు.
గడియారం మరో నిశ్శబ్ద వైఫల్యం. బ్యాటరీ గడియారం లేని రౌటర్ యుగం నుండి ప్రారంభమవుతుంది, అంటే NTP చేరుకునే వరకు సర్టిఫికెట్ తనిఖీలు విఫలమవుతాయి. సర్టిఫికెట్ను తాకే ముందు లాగ్ సమయ ముద్రలను నిజమైన సమయంతో పోల్చండి, ఎందుకంటే బూట్ అయిన ఒక నిమిషం తర్వాత కనెక్ట్ అయ్యే క్లయింట్ సాధారణంగా సమయ సమకాలీకరణ కోసం వేచి ఉంటుంది.