ZeroTier నిష్క్రమణ నోడ్ పని చేయడం లేదా? మార్గం, NAT మరియు క్లయింట్ను తనిఖీ చేయండి
క్లయింట్లో 0.0.0.0/0 మార్గం ఉండటం నిష్క్రమణ కాదు. నోడ్ ఫార్వర్డ్ చేసి అనువదించాలి, నెట్వర్క్ మార్గాన్ని ప్రకటించాలి, క్లయింట్ దానిని అంగీకరించాలి.
మార్గ పట్టిక ZeroTier ఇంటర్ఫేస్ ద్వారా డిఫాల్ట్ మార్గాన్ని చూపిస్తుంది, నెట్వర్క్ ఆన్లైన్ అని నివేదిస్తుంది, అయినా బ్రౌజర్ ఇప్పటికీ స్థానిక ISP చిరునామా నుండే బయటకు వెళ్తుంది. ఈ కలయిక సాధారణం మరియు ఇది క్లయింట్ బగ్ కాదు. డిఫాల్ట్ మార్గం ప్యాకెట్లు ఎక్కడికి వెళ్లాలో మాత్రమే చెబుతుంది; మరొక వైపు ఏదో వాటిని ఫార్వర్డ్ చేసి అనువదించాలి. నిష్క్రమణ నోడ్ పని చేయడానికి ముందు మూడు వేర్వేరు భాగాలు నిజం కావాలి.
మార్గం ఉంది కానీ ఏదీ బయటకు వెళ్లడం లేదు
మొదట క్లయింట్ మార్గ పట్టికను తనిఖీ చేయండి. default via 10.147.20.5 dev zt0 వంటి పంక్తి మార్గం ఇన్స్టాల్ అయిందని రుజువు చేస్తుంది, గమ్యం ట్రాఫిక్ను అంగీకరిస్తుందని కాదు. తదుపరి హాప్ దానిని ఫార్వర్డ్ చేయడానికి సిద్ధంగా ఉన్న మరియు సమర్థమైన సభ్యుడు అయి ఉండాలి.
అదే అభ్యర్థన ఇప్పటికీ భౌతిక ఇంటర్ఫేస్ ద్వారా బయటకు వెళ్తే, క్లయింట్ మార్గాన్ని ఇన్స్టాల్ చేయలేదు, లేదా స్థానిక డిఫాల్ట్కు ఓడిపోయిన కొలమానంతో ఇన్స్టాల్ చేసింది. మార్గం ఇన్స్టాల్ అయిన తర్వాత అభ్యర్థన మాయమైతే, నిష్క్రమణ సభ్యుడు ప్యాకెట్లను స్వీకరిస్తోంది మరియు వాటిని ఫార్వర్డ్ చేయడంలో లేదా అనువదించడంలో విఫలమవుతోంది. భౌతిక డిఫాల్ట్ను ఉంచుకునే క్లయింట్ నిష్క్రమణకు ఒక్క ప్యాకెట్ కూడా పంపదు.
ఈ భేదం ఎక్కడ పని చేయాలో నిర్ణయిస్తుంది. మార్పుకు ముందు మరియు తర్వాత పబ్లిక్ చిరునామాను పోల్చడం ఎప్పుడూ ఉపయోగించని మార్గాన్ని ఉపయోగించి వదిలేసిన మార్గం నుండి వేరు చేస్తుంది, మొత్తం కాన్ఫిగరేషన్ను సమీక్షించడానికి బదులు ఒకే ఆదేశం అవసరమవుతుంది. మరేదైనా మార్చే ముందు పోలిక చేయండి, రెండు ఫలితాలు ఒకే ప్రారంభ స్థితి నుండి రావాలి.
అన్నీ నిజం కావాల్సిన మూడు భాగాలు
నిష్క్రమణ ఒక గొలుసు, బలహీనమైన లింకు లక్షణాన్ని నిర్ణయిస్తుంది. క్రింది పట్టిక లింకులను అవి సాధారణంగా విఫలమయ్యే క్రమంలో జాబితా చేస్తుంది.
| Part | Where it lives | What a failure looks like |
|---|---|---|
| Forwarding and NAT | Exit node kernel and firewall | Traffic arrives, no reply |
| Managed default route | ZeroTier network controller | No default via the tunnel on the member |
| Client acceptance | Member's per-network setting | Route offered but not installed |
| DNS behavior | Client resolver configuration | Pages fail by name, IP works |
మొదటి వరుస ఎంపిక పేరు దాచే వరుస. సభ్యుడు తన కెర్నల్ ZeroTier ఇంటర్ఫేస్ మరియు ఇంటర్నెట్ వైపు ఉన్న ఇంటర్ఫేస్ మధ్య ప్యాకెట్లను ఫార్వర్డ్ చేసినప్పుడు, ప్రతిస్పందన మార్గం సొరంగంలోకి తిరిగి అనువదించబడినప్పుడు మాత్రమే నిష్క్రమణ అవుతాడు. ఆ ఫార్వర్డింగ్ లేకుండా, సభ్యుడు సహచరుడు, గేట్వే కాదు.
నియంత్రిక వరుస అధికారం, కాన్ఫిగరేషన్ కాదు. సభ్యుడి ద్వారా 0.0.0.0/0 ప్రకటించడం ప్రతి క్లయింట్కు నిష్క్రమణ ఎక్కడ ఉందో చెబుతుంది; అది ఆ సభ్యుడిని ట్రాఫిక్ మోయగల సామర్థ్యం ఇవ్వదు. సభ్యుడికి ఇంటర్నెట్కు పని చేసే మార్గం ఉందా అని కూడా అది ధృవీకరించదు. ZeroTier యొక్క నిష్క్రమణ నోడ్ డాక్యుమెంటేషన్ నోడ్, మార్గం మరియు క్లయింట్ మధ్య అదే విభజనను కవర్ చేస్తుంది.
నిష్క్రమణ నోడ్ను ఫార్వర్డ్ చేయడానికి మరియు అనువదించడానికి సెట్ చేయండి
IPv4 ఫార్వర్డింగ్ను శాశ్వతంగా ప్రారంభించి, ఆపై WAN ఇంటర్ఫేస్ వదిలి వెళ్లే ట్రాఫిక్కు మూల NAT జోడించండి. ఫిల్టర్ నియమాలు ఫార్వర్డ్ చేసిన ప్రవాహాన్ని రెండు దిశలలో అనుమతించాలి, ఎందుకంటే ఫార్వర్డింగ్ మరియు అనువాదం అనుమతి నుండి వేరు:
sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i zt0 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o zt0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPTzt0 మరియు eth0 స్థానంలో హోస్ట్పై ఉన్న పేర్లను పెట్టండి; నమూనా ఇంటర్ఫేస్ కోసం సేవ్ చేసిన నియమం నిజమైన దానిపై ప్యాకెట్లను అనుసరించదు. నియమాలను కలిగి ఉన్న ఫైర్వాల్ మేనేజర్ ద్వారా మార్పులను శాశ్వతం చేయండి, ఎందుకంటే ఇంటరాక్టివ్ షెల్లోని ఆదేశం తదుపరి రీబూట్లో మాయమవుతుంది.
హోస్ట్ UFW లేదా firewalld వంటి ఫైర్వాల్ మేనేజర్ను నడుపుతుంటే, పక్కన iptables పంక్తులను పోగు చేయడానికి బదులు ఆ మేనేజర్ ద్వారానే నియమాలను జోడించండి. ఒకే గొలుసులను సవరించే ఇద్దరు యజమానులు బూట్ క్రమంపై ఆధారపడే విధానాన్ని సృష్టిస్తారు. మేనేజర్ తన స్వంత గొలుసులను ఉత్పత్తి చేసినప్పుడు క్రమం ముఖ్యం. మేనేజర్ను మళ్లీ లోడ్ చేసిన తర్వాత క్లయింట్ నుండి పరీక్షించండి, ముందు కాదు.
మార్గాన్ని ప్రకటించి క్లయింట్లో అంగీకరించండి
నెట్వర్క్ నియంత్రికపై 0.0.0.0/0 కోసం నిర్వహిత మార్గాన్ని జోడించండి, దాని తదుపరి హాప్ నిష్క్రమణ సభ్యుడి ZeroTier చిరునామా. ఆపై దానిని ఉపయోగించాల్సిన సభ్యుడిపై ఆ నెట్వర్క్ కోసం ఓవర్రైడ్ను అనుమతించండి. అనుమతి స్థానికం: అది ఇతర సభ్యులను మళ్లీ కాన్ఫిగర్ చేయదు మరియు నియంత్రికను మార్చదు.
zerotier-cli listnetworks
zerotier-cli set <network-id> allowDefault=1
ip route get 1.1.1.1చివరి ఆదేశం ZeroTier ఇంటర్ఫేస్ మరియు నిష్క్రమణ సభ్యుడి చిరునామాను నివేదించాలి. అది ఇప్పటికీ భౌతిక ఇంటర్ఫేస్ను నివేదిస్తే, మార్గం లేదు లేదా పోటీ డిఫాల్ట్కు మెరుగైన కొలమానం ఉంది.
సెట్టింగ్ను అది అవసరమయ్యే నెట్వర్క్కు మాత్రమే పరిమితం చేయండి. డిఫాల్ట్ మార్గ అంగీకారాన్ని ప్రపంచవ్యాప్తంగా ప్రారంభించడం, లేదా ప్రైవేట్ సబ్నెట్ మాత్రమే అందించాల్సిన నెట్వర్క్లో ప్రారంభించడం, దాని కోసం ఎప్పుడూ కొలవని నిష్క్రమణ ద్వారా ట్రాఫిక్ను పంపుతుంది.
నిష్క్రమణను ధృవీకరించి ఇతర చిరునామా కుటుంబాలను చూడండి
మూలాన్ని నివేదించే సేవ నుండి పబ్లిక్ చిరునామాన్ని అడగండి, దానిని నిష్క్రమణ నోడ్ WAN చిరునామాతో పోల్చండి. ఆపై DNS ఇప్పటికీ పరిష్కరిస్తుందని నిర్ధారించడానికి పేరుతో సైట్ను లోడ్ చేయండి, బ్రౌజర్ మాత్రమే కాకుండా ముఖ్యమైన అప్లికేషన్ను కూడా పరీక్షించండి.
ద్వంద్వ స్టాక్ క్లయింట్ IPv4 ZeroTier ద్వారా బయటకు వెళ్తుండగా తన స్వంత IPv6 మార్గాన్ని కొనసాగించవచ్చు. లక్ష్యం మొత్తం ట్రాఫిక్ను దాచడం లేదా నియంత్రించడం అయితే, ప్రత్యేక ::/0 మార్గం మరియు నిష్క్రమణపై IPv6 ఫార్వర్డింగ్ అవసరం, IPv4 పరీక్ష వాటి గురించి ఏమీ చెప్పదు.
Linux యొక్క రివర్స్-పాత్ ఫిల్టరింగ్ క్లయింట్పై చెల్లుబాటు అయ్యే నిష్క్రమణ ట్రాఫిక్ను కూడా పడేయవచ్చు. ZeroTier పాల్గొనే సభ్యులకు rp_filter పరిగణనను డాక్యుమెంట్ చేస్తుంది; ఆ సెట్టింగ్ను ఉద్దేశపూర్వకంగా మరియు మార్గం మరియు NAT ధృవీకరించిన తర్వాత మాత్రమే మార్చండి, మొదటి ప్రయోగంగా కాదు.
అవసరం NAS లేదా ఒక కార్యాలయ సబ్నెట్కు ప్రాప్యత అయితే, ఆ ఉపసర్గకు నిర్వహిత మార్గం పూర్తి నిష్క్రమణ కంటే చిన్నది మరియు సురక్షితమైన మార్పు. మొత్తం బ్రౌజింగ్ను మరొక పరికరం ద్వారా పంపడం ఒక ప్రైవేట్ వనరును చేరుకోవడం కంటే భిన్నమైన నిర్ణయం, అది ప్రత్యేక సమీక్షకు అర్హం.