दोन /1 उपसर्ग एका /0 सारखेच तंतोतंत तेच IPv4 पत्ते व्यापतात, आणि ही समानता केवळ सहकारीाच्या परवानगी दिलेल्या उपसर्ग यादीच्या आतच लागू होते। सेटअप साधनाने कसे मार्गस्थ करायचे हे ठरवलेल्या क्षणी ती लागू होणे थांबते, कारण Linux मधील wg-quick डीफॉल्ट उपसर्गाला अंकगणित न मानता विशेष प्रकरण म्हणून हाताळते। विशेष शाखा एक समर्पित तक्ता, दोन धोरण नियम, सॉकेट खूण आणि उलट मार्गाची सेटिंग्ज बसवते, जी अर्ध्या मार्गांच्या जोडीला कधीही मिळत नाहीत। त्यामुळे संपादनानंतर प्रॉक्सी किंवा ब्राउझरने काम करणे थांबवल्यास, उपसर्ग हा बदलाचा सर्वात कमी मनोरंजक भाग असतो।

उपसर्ग यादी संपूर्ण संरचना नाही

AllowedIPs एकाच वेळी दोन कामे करते, आणि त्यातील फक्त एक व्याप्तीशी संबंधित आहे। WireGuard साठी ही यादी क्रिप्टोकी मार्गस्थता आहे: कोणती गंतव्ये सहकारीाकडे कूटबद्ध होतात आणि तो सहकारी कोणते स्रोत पत्ते वापरू शकतो हे ती ठरवते। wg-quick साठी तीच यादी मार्ग विनिर्देश म्हणूनही काम करते, आणि ती जो मार्ग तयार करते तो यादी योगायोगाने कोणत्या शाखेशी जुळते यावर अवलंबून असतो। त्यामुळे दोन वेगळ्या यादी आकारांमध्ये समान व्याप्ती असणे समान होस्ट स्थितीबद्दल काहीही सांगत नाही।

डीफॉल्ट संरचना तो निर्णय तुमच्या हातातून घेते, कारण Table डीफॉल्टनुसार स्वयंचलित आहे आणि मार्ग कुठे उतरतील हे साधन स्वतः निवडते। दुसरा नेटवर्क व्यवस्थापक, वितरण आवरण किंवा सानुकूल Table मूल्य निकाल पुन्हा बदलते, म्हणून एका होस्टसाठी लिहिलेला सल्ला पुढच्या होस्टवर चुकीचा वाटू शकतो।

डीफॉल्ट शाखा मार्गाव्यतिरिक्त काय जोडते

/0 नोंद wg-quick ला त्याच्या डीफॉल्ट मार्गाच्या पथावर पाठवते: स्वतंत्र मार्गस्थता तक्ता डीफॉल्ट घेते, एक धोरण नियम खूण न केलेला रहदारी तिथे पाठवतो, दुसरा नियम मुख्य तक्त्यातील अधिक विशिष्ट मार्ग अधिकृत ठेवतो, आणि इंटरफेसला स्वतःच्या सॉकेटवर फायरवॉल खूण मिळते। ती खूण म्हणजे लूप रक्षक। बोगद्याची रहदारी वाहणारे कूटबद्ध डेटाग्राम खूण लावून बाहेर पडतात, म्हणून बाकी सर्व बोगद्यात वळवणारा नियम बोगद्याच्या स्वतःच्या वाहतूक पॅकेटना गिळत नाही।

त्याऐवजी /1 नोंदींची जोडी नेहमीचा मार्ग घेते। संरचित तक्त्यात दोन मार्ग उतरतात, आणि आसपासच्या यंत्रणेपैकी काहीही दिसत नाही, ते अनावश्यक असल्यामुळे नाही, तर त्या कोड मार्गात कधीच प्रवेश झाला नसल्यामुळे।

दोन व्यवस्था कुठे वेगळ्या होतात

फरक प्रथम पुनरावृत्ती म्हणून दिसतो। मुख्य तक्त्यात अर्धे मार्ग असताना, सहकारीाचा स्वतःचा वाहतूक पत्ता बोगदा उपसर्गाच्या आत येतो, त्यामुळे बोगदा वाहणारे पॅकेट बोगद्याच्या आतील बाजूस निर्देश करणाऱ्या मार्गाशी जुळते। काहीतरी त्याला सूट द्यायला हवी: सध्याच्या अंतिम बिंदूसाठी होस्ट मार्ग, हाताने लावलेली खूण, किंवा इंटरफेस-विशिष्ट नियम। अंतिम बिंदूचा पत्ता बदलल्याशिवाय होस्ट मार्ग चालतो, हे DNS-आधारित अंतिम बिंदू, फिरणारे क्लायंट आणि अनेक सहकारी असलेल्या संरचनांमध्ये घडते।

दुसरे म्हणजे, खुणांविषयी तर्क करणारे सर्व काही वर्तन बदलते। स्थानिक पातळीवर कनेक्शन वळवणारी पारदर्शक प्रॉक्सी नवीन सॉकेट तयार करते, ज्यांच्या खुणा आणि स्रोत मूळ क्लायंट प्रवाहापेक्षा वेगळे असतात, आणि डीफॉल्ट शाखा तयार करणारे धोरण नियम ते प्रवाह वेगळे करण्याचा भाग होते। प्रॉक्सीचे स्वतःचे बाहेर जाणारे कनेक्शन वाचणे हे मूळ गंतव्य गाठता येते का हे तपासण्यापेक्षा वेगळा व्यायाम आहे।

संपादनापूर्वी नियम आणि खुणा वाचा

बोगदा निरोगी असताना सध्याची स्थिती नोंदवा, नंतर बदलानंतर पुन्हा, आणि संरचना फाइलमधून तर्क करण्याऐवजी दोन्ही डंप तुलना करा। धोरण नियम, प्रत्येक तक्ता, इंटरफेसची खूण आणि नोंदवलेले अंतिम बिंदू समाविष्ट करा।

ip rule show
ip -4 route show table all | grep -E 'default|wg1'
wg show wg1 fwmark
wg show wg1 endpoints

जर आउटपुटची पहिली ओळ खूण न केलेल्या रहदारीचा नियम गमावली असेल आणि समर्पित तक्ता रिकामा असेल, तर डीफॉल्ट शाखा चालत नाही आणि कोणतेही उपसर्ग अंकगणित त्याचे परिणाम परत आणणार नाही। यापूर्वी खूण असलेल्या इंटरफेसवर शून्य खूण हाच संकेत आहे, एका मूल्यात दिसतो।

प्रकाशनापूर्वी बोगदा गमावण्याचा सराव करा

जर अर्ध्या मार्गांची मांडणी जाणीवपूर्वक निवड असेल, तर तिने गहाळ भाग स्पष्टपणे पुरवले पाहिजेत: पत्ते बदलल्यावरही टिकणारा अंतिम बिंदू मार्ग, बोगदा पडल्यास इच्छित वर्तन, आणि IPv6 साठी समतुल्य हाताळणी। अडथळ्याच्या वेळी शोधण्याऐवजी ते आवश्यकता म्हणून लिहा। नंतर अपयशाचा सराव करा, कारण भौतिक अपलिंकवर शांतपणे परत जाणारा पूर्ण बोगदा काम करणे थांबवणाऱ्या बोगद्यापेक्षा वाईट आहे।

sudo ip -4 route add 198.51.100.20/32 via 192.0.2.1 dev eth0
ip -4 route get 198.51.100.20
sudo wg-quick down wg1

मार्ग शोधाने बोगदा न ओलांडता भौतिक इंटरफेसवरून अंतिम बिंदू सोडवला पाहिजे, आणि इंटरफेस खाली उतरवल्यास होस्ट डिझाइनने वचन दिलेल्या स्थितीत राहिला पाहिजे। बदलीनंतर चालणारी प्रॉक्सी निर्माण झालेली होस्ट स्थिती महत्त्वाची होती हे सिद्ध करते; पण लूप प्रतिबंध आणि बंद स्थितीतील वर्तन संपादनातून वाचले हे ते सिद्ध करत नाही।

संबंधित लेख