ఒకే Linux హోస్ట్పై రెండు OpenVPN సొరంగాలు: మార్గం ఎవరిది?
పూల్స్, నెట్టబడిన మార్గాలు మరియు డిఫాల్ట్ క్లెయిమ్లు కేటాయించిన తర్వాత రెండు క్లయింట్ ప్రొఫైల్లు కలిసి ఉండగలవు. మొదట యాజమాన్యాన్ని నిర్ణయించండి, ఆపై తిరిగి వచ్చే మార్గానికి మార్క్లను ఉపయోగించండి.
రెండు ప్రొఫైల్లు కనెక్ట్ అయ్యాయి, వాటిలో ఒకటి మరొకదానికి ఉద్దేశించిన ట్రాఫిక్ను నిశ్శబ్దంగా మోస్తోంది. Linux హోస్ట్ రెండు OpenVPN క్లయింట్లను ఒకేసారి ఇబ్బంది లేకుండా నడపగలదు. అది చేయలేనిది ఏ ప్రాసెస్ ఏ ప్రిఫిక్స్ను క్లెయిమ్ చేయవచ్చో మీ తరపున నిర్ణయించడం. ఆ నిర్ణయం రెండవ సొరంగం పైకి రాకముందే తీసుకోవాలి, వనరు సమాధానం ఇవ్వడం ఆపిన తర్వాత కాదు.
రెండవ లింక్ చేయాల్సిన పని నుండి ప్రారంభించండి
ఒక ప్రొఫైల్ ద్వారా చేరుకోగల కార్యాలయం మరియు మరొకదాని ద్వారా చేరుకోగల ప్రయోగశాలకు రెండు సొరంగాలు పైన ఉండాలి మరియు ఏదీ అన్నింటినీ క్లెయిమ్ చేయకూడదు. రెండవ ప్రొఫైల్ ద్వారా బయటకు వెళ్లాల్సిన ఒక పట్టుదలగల యాప్కు రెండవ డిఫాల్ట్ మార్గం కాకుండా విధాన నియమం కావాలి. స్టాండ్బై లింక్కు ఒకే సమయంలో ఒక సొరంగం మాత్రమే నడిస్తే సరిపోతుంది, కాబట్టి అదనపు మెషీన్తో ప్రారంభం కాకూడదు.
ఇవి మూడు వేర్వేరు కాన్ఫిగరేషన్లు, మూడూ ఒకే విధంగా మొదలవడం వల్ల గందరగోళం అవుతాయి: రెండవ ప్రొఫైల్ మరియు విజయవంతమైన కనెక్షన్. మొదట ఉద్దేశించిన అమరికను రాయండి, ఆపై దాని వైపు కాన్ఫిగర్ చేయండి. ఉద్దేశం గురించి ఒక వాక్యం ఒక గంట ప్యాకెట్ క్యాప్చర్ను ఆదా చేస్తుంది.
systemctl list-units --type=service 'openvpn-client@*' ip -4 route show default
మొదటి ఆదేశం నడుస్తున్న ఇన్స్టాన్సులను జాబితా చేస్తుంది, మేనేజర్ వెలుపల చేతితో ప్రారంభించినవి సహా. రెండవది ప్రస్తుత డిఫాల్ట్ క్లెయిమ్ను ముద్రిస్తుంది, అదే తర్వాత మీరు వివరించాల్సిన స్థితి.
అతిపాతం అయ్యే పూల్స్ రూటింగ్కు ముందే విరిగిపోతాయి
రెండు సర్వర్లు అదే 10.8.0.0/24 నుండి చిరునామాలను సంతోషంగా కేటాయిస్తాయి. అప్పుడు క్లయింట్ ఒకే ప్రిఫిక్స్ లోపల రెండు ఇంటర్ఫేస్లను కలిగి ఉంటుంది, ఏ గమ్యం ఎవరిదో చెప్పేది ఏమీ ఉండదు, దాని ఫలిత ప్రవర్తన రూటింగ్ వైఫల్యంలా కనిపిస్తుంది కానీ వాస్తవానికి అది సంఖ్యా క్రమ వైఫల్యం. పూల్ను తిరిగి నంబర్ చేయడానికి ఒక కాన్ఫిగరేషన్ మార్పు ఖర్చవుతుంది; తర్వాతి ప్రతి రూటింగ్ ఉపాయం ఒక వారాంతం ఖర్చవుతుంది. దానికి మార్గం జోడించే ముందు పూల్ను తనిఖీ చేయండి.
స్థానిక LAN కూడా చూడండి. ఒక సొరంగం బహిర్గతం చేసే 192.168.1.0/24 నంబర్ ఉన్న ఇంటి LAN అదే అస్పష్టతను సృష్టిస్తుంది, లక్షణం ఏమిటంటే కనెక్షన్ ఎప్పటికీ పూర్తి కాకుండా పరిష్కరించబడే హోస్ట్నేమ్. మార్గాలను ముద్రించే వరకు అది పేరు పరిష్కార వైఫల్యంలా కనిపిస్తుంది.
ip -4 addr show ip route show table all | grep -E '10\.|192\.168\.'
క్లయింట్ను తాకే ముందు రెండు అవుట్పుట్లను రెండు సర్వర్ కాన్ఫిగరేషన్లతో పోల్చండి. ప్రిఫిక్స్లు ఒకదానిపై ఒకటి ఉంటే, ఆపి తిరిగి నంబర్ చేయండి, ఎన్నిసార్లు రీస్టార్ట్ చేసినా అవి వేరు కావు.
ప్రతి ప్రొఫైల్కు దాని యూనిట్ మరియు ప్రతి ప్రిఫిక్స్కు యజమానిని ఇవ్వండి
ప్రతి ప్రొఫైల్కు దాని స్వంత ఇన్స్టాన్స్ పేరు మరియు దాని స్వంత కాన్ఫిగరేషన్ ఫైల్ లభిస్తుంది, కాబట్టి office అనే ఇన్స్టాన్స్ office.conf లోడ్ చేస్తుంది, lab అనేది lab.conf లోడ్ చేస్తుంది. డైరెక్టరీ జాబితాపై నమ్మకం పెట్టుకోవడం బదులు సేవా మేనేజర్ ద్వారా ఆ మ్యాపింగ్ను నిర్ధారించండి, ఎందుకంటే drop-in ఏ ఫైల్ లోడ్ అవుతుందో మార్చగలదు. మ్యాపింగ్ తప్పు అయితే మీరు నడవని ప్రొఫైల్ను ట్యూన్ చేస్తున్నారు.
తర్వాత మార్గాలను ఎవరు ఇన్స్టాల్ చేస్తారో నిర్ణయించండి. సర్వర్లు సరిపోలని సెట్లను నెట్టినప్పుడు, ఒకటి నెట్టడాన్ని తిరస్కరించి ప్రిఫిక్స్లను మీరే జాబితా చేయండి, లేదా ఒక ప్రొఫైల్ డిఫాల్ట్ను ఉంచుకోనివ్వండి, మరొకదాన్ని విధాన నియమాలతో నడిపించండి. రెండూ డిఫాల్ట్ను ఇన్స్టాల్ చేసే రెండు ప్రాసెస్లు నిశ్శబ్ద విజేతతో మరియు నిర్ణయం గురించి వ్రాతపూర్వక నమోదు లేకుండా ముగుస్తాయి.
systemctl cat [email protected] grep -E 'route-nopull|pull-filter|redirect-gateway' /etc/openvpn/client/lab.conf
మొదటిది యూనిట్ను దాని ఆర్గ్యుమెంట్లను మార్చే ఏ ఓవర్రైడ్తో సహా చూపిస్తుంది. రెండవది ప్రొఫైల్ నెట్టబడిన మార్గాలను అసలు అంగీకరిస్తుందో లేదో చూపిస్తుంది, అదే తర్వాతి అన్నింటినీ నిర్ణయించే స్విచ్.
మార్క్లు సమాధానాలను అవి వచ్చిన ఇంటర్ఫేస్పైనే ఉంచుతాయి
ప్రతి సొరంగం వేర్వేరు మూలాలకు సేవ చేసినప్పుడు, సమాధానం తప్పు లింక్ ద్వారా బయటకు వెళ్లవచ్చు, మొదటి ప్యాకెట్ తర్వాత కనెక్షన్ చనిపోతుంది. నిలిచే నమూనా ఏమిటంటే వచ్చే ప్యాకెట్లను ఇన్పుట్ ఇంటర్ఫేస్ ప్రకారం మార్క్ చేయడం, ఆ మార్క్ను సమాధానంపై పునరుద్ధరించడం, మరియు ప్రతి మార్క్కు దాని స్వంత డిఫాల్ట్ గేట్వే ఉన్న పట్టిక ఇవ్వడం.
ప్రభావిత ఇంటర్ఫేస్లకు సాధారణంగా వదులైన రివర్స్-పాత్ ఫిల్టరింగ్ను సడలించాలి, ఎందుకంటే సమాధానం ప్రధాన పట్టిక ఎప్పటికీ ఎంచుకోని లింక్ ద్వారా చట్టబద్ధంగా వస్తుంది. మార్క్లను ఇరుకుగా ఉంచండి, అవి సొరంగాల స్వంత గుప్తీకరించిన ట్రాఫిక్ను ఎప్పటికీ పట్టుకోకూడదు, అది సొరంగాన్ని దాని ద్వారానే పంపుతుంది.
ip rule show ip route show table 101 sysctl net.ipv4.conf.all.rp_filter
మరొకటి జోడించే ముందు ఉన్న నియమాలను చదవండి. నకిలీ ప్రాధాన్యతలు మరియు మరచిపోయిన పట్టికలే మార్క్ విధానం అసలు ప్రభావం లేనట్టు కనిపించడానికి సాధారణ కారణం.
ఒక లింక్ను ఆపి వేరుచేయడాన్ని నిరూపించండి
రెండు సొరంగాలు పైన ఉన్నప్పుడు ప్రతి ఇంటర్ఫేస్ చిరునామా, ప్రతి సొరంగం వెనుక ఒక హోస్ట్కు మార్గం, మరియు సంబంధం లేని గమ్యం తీసుకునే దారిని నమోదు చేయండి. ఒక పట్టిక చదవడం బదులు కెర్నల్ను శోధన అడగండి, ఎందుకంటే ఒక పట్టిక ఎప్పటికీ తుది నిర్ణయాన్ని చూపదు.
తర్వాత ఒక ఇన్స్టాన్స్ను ఆపి, మరొకటి కొనసాగుతుండగా దాని ఇంటర్ఫేస్ మరియు మార్గాలు మాయమవడాన్ని చూడండి. మిగిలిన దానిలో విచ్ఛిత్తి అంటే రెండూ ఇంకా ఎవరూ వేరు చేయని పరికర పేరు, మార్గం లేదా ఫైర్వాల్ నియమాన్ని పంచుకుంటున్నాయి.
ఆపిన ప్రొఫైల్ను తిరిగి తీసుకురండి మరియు అదే తనిఖీలను పునరావృతం చేయండి. రీబూట్ తర్వాత మొదటి ప్రారంభంలో మాత్రమే సొరంగం నిలిచినట్లయితే, మీరు రూటింగ్ డిజైన్ కాదు, జీవిత చక్ర లోపాన్ని చూస్తున్నారు.