mDNS WireGuard மீது: peer பதிலளிக்கும் முன் மூன்று வாசல்கள்
Avahi-க்கு தகுதியான இடைமுகம், குழுவுக்கான பாதை மற்றும் இலக்கை உடைய peer தேவை. மூன்று வாசல்கள், மூன்று தனித்தனி சோதனைகள் மற்றும் எந்தப் பரவலும் இல்லை.
WireGuard சாதனத்தில் multicast கொடியை அமைப்பது இடைமுகத்தைக் கண்டறிதல் மென்பொருளுக்குத் தகுதியாக்குகிறது, கொடி செய்வது அவ்வளவே. குழுப் பொதி எங்கு செல்ல வேண்டும் என்பதை அது நெறிமுறைக்குச் சொல்லாது, பல peer கொண்ட சாதனத்தில் ஒரே தெளிவான பதில் இல்லை. இயங்கும் டீமனுக்கும் கண்டறியப்பட்ட சேவைக்கும் இடையே மூன்று தனித்தனி வாசல்கள் உள்ளன.
அவற்றை வரிசையாகச் சோதியுங்கள், ஒன்றைத் தாண்டுவது அடுத்ததைப் பற்றி எதையும் சொல்லாது.
முதல் வாசல்: கொடி மற்றும் டீமனின் கொள்கை
Linux WireGuard சாதனம் ARP இல்லாத புள்ளி-முதல்-புள்ளி இணைப்பாக உருவாக்கப்படுகிறது, இயல்பாக multicast கொடியைத் தாங்காது. கொடியைச் சேர்ப்பது சாதனத்தை நிர்வகிப்பது எதுவோ அதனால் செய்யப்படும் உள்ளூர் இடைமுக மாற்றமாகும். Avahi இதன் மேல் தனது சொந்த உலகப் பார்வையைக் கொண்டுள்ளது, அதன் இயல்பு கொள்கை புள்ளி-முதல்-புள்ளி இடைமுகங்களை முழுவதுமாகத் தவிர்க்கிறது. எனவே ஒரு பொதிகூட நகர்வதற்கு முன் இரண்டு சுயாதீனத் தகுதிச் சோதனைகள் பொருந்தும்.
எனவே டீமனுக்குத் தெளிவான முடிவு தேவை, இயங்கும் செயல்முறை மட்டுமல்ல. அதன் ஆவணப்படுத்தப்பட்ட கட்டுப்பாடுகளில் allow-interfaces, deny-interfaces மற்றும் allow-point-to-point அடங்கும், கடைசியானது மக்கள் தவறவிடும் அமைப்பாகும்.
கீழேயுள்ள சோதனைகள் இணைப்புக் கொடிகள், multicast பாதை மற்றும் டீமனின் உள்ளமைவு பாகுபடுத்தப்படுகிறதா என்பதைத் தெரிவிக்கின்றன:
ip -d link show wg0
ip route get 224.0.0.251
avahi-daemon --check
வெற்றிகரமாகத் தொடங்கிய டீமன் உங்களுக்கு முக்கியமான இடைமுகத்தில் சாக்கெட்டுகளைத் திறந்திருக்க வேண்டும் என்பதில்லை. சேவை நிலை பரப்பளவுக்குச் சமம் எனக் கருதுவதற்குப் பதிலாக அதன் பயனுள்ள உள்ளமைவைப் படியுங்கள்.
இரண்டாம் வாசல்: குழுவுக்கான பாதை
இரண்டாம் வாசல் சாதாரண வழிசெலுத்தல். 224.0.0.251 முகவரிக்கு அனுப்பப்பட்ட பொதி மற்ற அனைத்தையும் போலவே அனுப்புதல் அட்டவணையைப் பின்பற்றுகிறது, அட்டவணை அதை இயற்பியல் LAN இடைமுகத்தின் வழியாக வெளியே அனுப்பினால் எந்த WireGuard உள்ளமைவும் அதை மாற்றாது. முதலில் பாதையைச் சரிசெய்யுங்கள், மீதமுள்ள விசாரணை குறுகும். எந்த peer விசையையும் தொடுவதற்கு முன் கர்னல் குழு முகவரி பற்றி என்ன தெரிவிக்கிறது என்று பாருங்கள்.
| Observation | Gate it belongs to | What it does not prove |
|---|---|---|
Multicast flag present on wg0 | Interface eligibility | The daemon will use the interface |
Route to the group via wg0 | Forwarding | Any peer will receive it |
| Destination inside a peer's allowed list | Peer selection | That peer's network will answer |
குறிப்பிட்ட பாதை இல்லாவிட்டால், கர்னல் இணைப்பின் சொந்த multicast கையாளுதலுக்குத் திரும்புகிறது, அதனால்தான் இயல்பு தட்டையான LAN-இல் சரியாகவும், அதே குழுப் போக்குவரத்து சுரங்கப்பாதை வழியாக வெளியேற வேண்டிய தருணத்தில் தவறாகவும் தோன்றுகிறது. தோல்வி அனுப்புபவர் பக்கத்திலிருந்து அமைதியானது: வினவல் எங்கோ செல்கிறது, பதில் ஒருபோதும் வராது.
மூன்றாம் வாசல்: WireGuard ஒரு பொதிக்கு ஒரு peer-ஐத் தேர்ந்தெடுக்கிறது
WireGuard அனுமதிக்கப்பட்ட முகவரி தொகுப்புகளில் இலக்கைத் தேடி வெளிச்செல்லும் peer-ஐத் தேர்ந்தெடுக்கிறது, Linux அனுப்புதல் பாதை அந்தத் தேடலை ஒரு பொதிக்கு ஒரு முறை செய்கிறது. முடிவு ஒன்றே, பொதி அந்த peer-க்கு மறையாக்கப்படுகிறது. அதே குழு முன்னொட்டு பல peer-களின் அனுமதிக்கப்பட்ட பட்டியல்களில் தோன்றுவது உறுப்பினர் நிலையையோ நகலாக்கத்தையோ உருவாக்காது; அது அவற்றில் ஒன்றில் முடியும் தெளிவற்ற தேடலை உருவாக்குகிறது.
இரு முனைகள் கொண்ட பிரத்யேக இணைப்பில் இதுவே உங்களுக்குத் தேவையானது, ஏனெனில் வேண்டுமென்றே எடுத்துச் செல்லப்படும் குழுப் போக்குவரத்துக்கு ஒரே ஒரு நோக்கமான பெறுநர் உள்ளார். ஐந்து peer கொண்ட இடைமுகத்தில் இது ஒரு வரம்பு, அம்சம் அல்ல, திருத்தம் எந்த ஒரு peer-இன் உள்ளமைவிலும் அல்ல, வடிவமைப்பில் இருக்க வேண்டும்.
பரவல் வடிவமைப்புக்குத் தெளிவான ரிலே, தனி இணைப்புகள் அல்லது முற்றிலும் வேறுபட்ட கண்டறிதல் முறை தேவை. ஒவ்வொரு வாடிக்கையாளரும் நுழைவாயிலைப் பிங் செய்ய முடியும் என்பதற்காக இரு-முனை செய்முறையைப் பல-வாடிக்கையாளர் தீர்வாக வெளியிடுவதே இது தவறாகப் பயன்படுத்தப்படும் விதம்.
உள்வரும் திசை வேறுவிதமாகச் சோதிக்கப்படுகிறது: பெறப்பட்ட பொதியின் மூலம் அங்கீகரிக்கப்பட்ட peer-இன் அனுமதிக்கப்பட்ட பட்டியலுக்குள் இருக்க வேண்டும். அங்கு multicast இலக்கைச் சேர்ப்பது அனுப்புபவரின் உண்மையான மூல உரிமையை மாற்றாது.
பிரதிபலிப்பு ஒரு எல்லை, பாலம் அல்ல
Avahi-யின் பிரதிபலிப்பான் தான் தேர்ந்தெடுத்த இடைமுகங்களுக்கிடையே mDNS செய்திகளைப் பயன்பாட்டு அடுக்கில் மீண்டும் உருவாக்குகிறது. இது வலையங்களுக்கிடையேயான கண்டறிதல் எல்லை, ஈதர்நெட் பாலம் அல்ல, பொது multicast வழிசெலுத்தி அல்ல. ஒரே வலையங்களுடன் இணைக்கப்பட்ட இரண்டு பிரதிபலிப்பான்கள் மீளும் அறிவிப்புகளின் சுழற்சியை எளிதாக உருவாக்கும்.
பிரதிபலிப்பு சேவைப் பெயர்களையும் அவற்றின் மீத்தரவுகளையும் மற்றொரு வலையத்துக்குக் கையளிக்கிறது, இது வழிசெலுத்தல் முடிவு போலவே தனியுரிமை முடிவும் ஆகும். தேர்ந்தெடுத்த இடைமுகங்களை வரம்பிடுங்கள், நிறுவப்பட்ட பதிப்பு ஆதரிக்கும் இடத்தில் சேவை வடிகட்டிகளைப் பயன்படுத்துங்கள், அதிகாரம் பெற்ற பயனருக்குத் தேவையான அறிவிப்புகள் மட்டுமே எல்லையைக் கடக்கட்டும்.
கண்டறிதலும் பயன்பாடும் தனித்தனி முடிவுகளாகவே இருக்கும். வாடிக்கையாளர் இருக்கும் இடத்திலிருந்து விளம்பரப்படுத்தப்பட்ட முகவரியை அடைய முடியாத சேவையின் அல்லது அதன் அணுகல் கொள்கை துறைமுகத்தை மறுக்கும் சேவையின் அறிவிப்பை வாடிக்கையாளர் காணலாம். அறிவிப்பு தோன்றிய பிறகு சேவை இணைப்பை உறுதிசெய்யுங்கள், பயன்பாடு நிலையான DNS பெயர் அல்லது வெளிப்படையான சேவையக முகவரியை ஆதரித்தால் இணைப்பு-உள்ளூர் கண்டறிதலை விரிவாக்குவதை விட அதற்கு முன்னுரிமை கொடுங்கள். மறையீட்டு விசை வழிசெலுத்தல் விளக்கம் இவை அனைத்தும் சார்ந்திருக்கும் இலக்கு அடிப்படையிலான peer தேர்வை உள்ளடக்குகிறது.