OpenVPN மீது SSM: ஒரு மூலத்தையும் ஒரு குழுவையும் தொடக்கத்திலிருந்து இறுதி வரை பின்தொடர்தல்
VPN-ஐ குறை சொல்வதற்கு முன் ஒரு மூல-குறிப்பிட்ட multicast ஸ்ட்ரீமைப் பெறுநரின் உறுப்பினர் நிலை, RPF தேர்வு மற்றும் சுரங்கப்பாதையின் விநியோக மாதிரி வழியாகப் பின்தொடரவும்.
ஒரு ஸ்ட்ரீமையும் ஒரு பெறுநரையும் தேர்ந்தெடுத்து, multicast-ஐ ஒரு வகையாகச் சோதிப்பதற்குப் பதிலாக அந்த இணையை ஒவ்வொரு ஹாப்பிலும் கொண்டு செல்லுங்கள். மூல-குறிப்பிட்ட வடிவமைப்பு நான்கில் சரியாக ஒரு இடத்தில் தோல்வியடைகிறது: பெறுநர் ஒருபோதும் இணையவில்லை, ரவுட்டர் பாக்கெட்டை அதன் திரும்பு பாதையில் நிராகரித்தது, கர்னலுக்கு எந்த நிலையும் இல்லை, அல்லது சுரங்கப்பாதை ஒருபோதும் நகலை வழங்கவில்லை. அந்த வரிசையில் வேலை செய்வது ஒவ்வொரு ஹாப்புக்கும் சில நிமிடங்கள் எடுக்கும், நான்கில் எது உண்மையில் உங்களிடம் உள்ளது என்பதைச் சொல்லும்.
முதலில் மூலம், குழு மற்றும் பெறுநரை நிர்ணயம் செய்யுங்கள்
எந்த சாதனத்தையும் தொடுவதற்கு முன் மூன்று மதிப்புகளை எழுதுங்கள்: அனுப்பப்போகும் மூல முகவரி, பெறுநர் இணையப்போகும் குழு முகவரி, மற்றும் பெறுநர் வசிக்கும் சப்நெட். ஒரு எடுத்துக்காட்டு IPv4 ஸ்ட்ரீமுக்கு, 10.50.0.10 மூலமும் 232.20.30.40 குழுவும் மூல-குறிப்பிட்ட வடிவமைப்புக்குப் பொருந்தும் இணை வகையாகும். இந்த மூன்று மதிப்புகளை விட தெளிவற்ற எதையும் சோதிக்க முடியாது.
232/8 வரம்பு மூல-குறிப்பிட்ட multicast-க்கு ஒதுக்கப்பட்டுள்ளது, மாதிரி RFC 4607 இல் விவரிக்கப்பட்டுள்ளது. நீங்கள் SSM இயக்குகிறீர்கள் என்று நம்பும்போது உங்கள் குழு அந்த வரம்பிற்கு வெளியே இருந்தால், நிறுத்தி, வரிசைப்படுத்தல் உண்மையில் எதை நோக்கமாகக் கொண்டுள்ளது என்பதை உறுதிப்படுத்துங்கள், ஏனெனில் பெறுநரின் இணைவும் ரவுட்டரின் பகிர்வு முடிவும் இரண்டும் மாதிரி சீரானதாக இருப்பதைச் சார்ந்துள்ளன.
பெறுநர் மூலத்தில் இணைந்துள்ளாரா எனச் சரிபார்க்கவும்
குழுவுக்கு மட்டுமான உறுப்பினர் அறிக்கை மூல-குறிப்பிட்ட இணைவு அல்ல. பெறுநரிடம் எந்த மூலத்தைக் கோரினார் என்று கேளுங்கள், முதல் ஹாப்பின் ரவுட்டரில் குழு நிலையைப் பார்த்து மூல பட்டியல் தோன்றுகிறதா என்பதை அறியுங்கள். அறிக்கை எந்த மூலத்தையும் கொண்டிருக்கவில்லை என்றால், ரவுட்டர் அதை எந்த மூலத்திலிருந்தும் இணைவாகக் கருதும், முழு வடிவமைப்பும் நீங்கள் திட்டமிடாத ஒன்றாக அமைதியாகச் சிதைந்துவிடும்.
Linux பெறுநரில், சாக்கெட் உண்மையில் எதற்குச் சந்தா சேர்ந்தது, கர்னல் என்ன பதிவு செய்தது என்பதைச் சரிபார்க்கவும். பயன்பாட்டின் கட்டமைப்பு கோப்பு ஆதாரம் அல்ல; உறுப்பினர் அட்டவணையே ஆதாரம். பெறுநர் உண்மையில் இயங்கும்போது அதைப் படியுங்கள், ஏனெனில் அதை உருவாக்கிய செயல்முறை வெளியேறிய பிறகும் பதிவு சிறிது நேரம் நீடிக்கலாம். முந்தைய சோதனையின் பழைய பதிவு தவறான நம்பிக்கையின் நம்பகமான மூலமாகும்.
ip maddr show dev eth0
cat /proc/net/igmp | sed -n '1,40p'
எதிர்பார்க்கப்பட்ட மூலத்துடன் இணைவு இருந்தால், ரவுட்டர்களுக்குச் செல்லுங்கள். இல்லையென்றால், எந்த சுரங்கப்பாதை கட்டமைப்பும் உதவாது, ஏனெனில் பகிர எதுவும் இல்லை.
சுரங்கப்பாதையைப் பார்ப்பதற்கு முன் திரும்பு பாதையைச் சரிபார்க்கவும்
multicast வழியமைப்பு திரும்பு பாதை சரிபார்ப்பைச் செய்கிறது, யூனிகாஸ்ட் வழி காட்டும் இடைமுகத்தைத் தவிர வேறு இடைமுகத்தில் வரும் பாக்கெட் நீக்கப்படும். தெளிவாக அனுப்பப்படும் ஸ்ட்ரீம் அடுத்த ஹாப்பை ஒருபோதும் அடையாததற்கு இதுவே மிகவும் பொதுவான காரணம், மேலும் இது பயன்பாட்டு மட்டத்தில் எந்தப் பயனுள்ள பிழையையும் உருவாக்காது.
மூலத்தை நோக்கிய ரவுட்டரில், மூலத்திற்கான வழியை பாக்கெட்டுகள் உண்மையில் வரும் இடைமுகத்துடன் ஒப்பிடுங்கள். பெறுநரை நோக்கிய ரவுட்டரில், பெறுநரின் சொந்த சப்நெட்டுக்கு அதையே செய்து, வெளியேறும் இடைமுகங்களின் பட்டியலில் அதை நோக்கிய இணைப்பு உள்ளதை உறுதிப்படுத்துங்கள். எந்தத் திசையிலும் பொருந்தாமை RPF தோல்வி, உறுப்பினர் தோல்வி அல்ல.
பின்னர் மூலத்தின் TTL நீங்கள் வடிவமைத்த வழியமைக்கப்பட்ட ஹாப்புகளைக் கடக்க போதுமான பெரியதா என உறுதிப்படுத்துங்கள். முதல் ரவுட்டரில் வேலை செய்து இரண்டாவதில் இறக்கும் ஸ்ட்ரீம் பெரும்பாலும் TTL கேள்வி, கொள்கை கேள்வி அல்ல.
கட்டமைப்பை விட கர்னலின் multicast நிலையைப் படியுங்கள்
கட்டமைப்பு நீங்கள் என்ன கேட்டீர்கள் என்பதைச் சொல்கிறது; கர்னல் என்ன நடக்கிறது என்பதைச் சொல்கிறது. ஒவ்வொரு Linux ஹாப்பிலும், multicast வழியமைப்பு பதிவுகளைப் படித்து, சரியான மூலம்-குழு இணைக்கு உள்வரும் மற்றும் வெளிச்செல்லும் இடைமுகங்களின் பட்டியல் உள்ளதை உறுதிப்படுத்துங்கள். வைல்ட்கார்டு மூலத்துடன் குழுவுக்கான பதிவு வேறு பொருள், அது மூல-குறிப்பிட்ட ஓட்டத்தை விளக்காது.
ip mroute show from 10.50.0.10 iif eth1
ip route get 10.50.0.10
வழியமைப்பு டீமன்கள் அந்த நிலைக்கு மேலே தங்கள் சொந்தப் பார்வையை வைத்திருக்கின்றன, அதை அச்சிடும் கட்டளை எந்தச் செயலாக்கம் நிறுவப்பட்டுள்ளது என்பதைப் பொறுத்தது. கொள்கை நிலையானது: இணைக்கு டீமனிடம் அதன் மேல்நிலைப் பதிவைக் கேளுங்கள், பின்னர் பகிர்வுப் பதிவு உள்ளதா என்று கர்னலிடம் கேளுங்கள். கர்னலுக்கு பதிவு இல்லாதபோது தான் பகிர்கிறது என்று நினைக்கும் டீமன் அந்த ஹோஸ்ட்டில் கட்டமைப்பு வரம்பின் சிக்கல்.
இரண்டும் ஒத்துப்போகாதபோது, VPN அல்ல ஹோஸ்ட்டைச் சரிசெய்யுங்கள். நீங்கள் கேட்ட ஓட்டத்தைப் பகிராத ஹாப்பிற்கு கீழே எதுவும் ஈடுசெய்ய முடியாது. ஸ்ட்ரீம் வேலை செய்யும்போது ஒவ்வொரு ஹாப்பிற்கும் இணை, உள்வரும் இடைமுகம் மற்றும் வெளிச்செல்லும் பட்டியலைப் பதிவு செய்யுங்கள். அந்தப் பதிவு அடுத்த தோல்வியைப் புதிய விசாரணைக்குப் பதிலாக ஒப்பீடாக மாற்றுகிறது.
சுரங்கப்பாதை உண்மையில் எப்படி நகலெடுக்கிறது என்பதை முடிவு செய்யுங்கள்
இங்குதான் VPN மீதான multicast வழக்கமான வேலையாக இருப்பது நிற்கிறது. புள்ளி-முதல்-புள்ளி சுரங்கப்பாதை பாக்கெட்டை மறுமுனையில் உள்ள ஒரே சகாவுக்கு வழங்குகிறது, எனவே ஒரு நகல் சரியாக ஒரு கிளையண்டை அடைகிறது. பாலமிட்ட பிரிவு பகிரப்பட்ட இணைப்பைப் போலவே அதிகம் செயல்படுகிறது, ஏனெனில் சுரங்கப்பாதை பிரேமைக் கொண்டு செல்கிறது, பாலம் எதை வெள்ளமாக்குவது என்று முடிவு செய்கிறது. இவை வெவ்வேறு விநியோக மாதிரிகள், முதல் மாதிரியை இயக்கிக்கொண்டே இரண்டாவதைக் கருதும் வடிவமைப்பு ஒரு பெறுநருக்கு வேலை செய்வது போல் தோன்றி அடுத்தவருக்குத் தோல்வியடையும்.
பல-புள்ளி சேவையகம் வழியாக ஒன்றுக்கு மேற்பட்ட பெறுநர்களுக்கு, நகலெடுத்தல் வெளிப்படையாக வடிவமைக்கப்பட வேண்டும். கேட்வேயில் multicast வழியை நிறுவுவது எந்தச் சகாக்கள் நகலைப் பெற வேண்டும் என்று VPN சேவையகத்திற்குக் கற்பிக்காது, கிளையண்ட் பக்கத்தில் எந்த வழியும் அந்த முடிவை அதற்குப் பதிலாக எடுக்காது. தேவை பல பெறுநர்கள் என்றால், ஆதரிக்கப்படும் நகலெடுத்தல் அல்லது வேண்டுமென்றே தேர்ந்தெடுக்கப்பட்ட மாற்றைப் பயன்படுத்தி, எதைத் தேர்ந்தெடுத்தீர்கள் என்று எழுதுங்கள்.
இறுதியாக, பெறுநரிடம் குறுகிய கண்காணிப்பின் கீழ் சரிபார்க்கவும்: சரியான மூலம், குழு மற்றும் போர்ட், நீங்கள் எதிர்பார்க்கும் இடைமுகத்தில், ஒரு அதிகாரமளிக்கப்பட்ட பெறுநர் இணைந்திருக்கும்போது. SSM ஒரு அனுப்புநரைத் தேர்ந்தெடுக்கிறது, அந்தத் தேர்வு அந்த அனுப்புநரின் அங்கீகாரம் அல்ல, அதே கொள்கையை மற்ற multicast போக்குவரத்து கடக்க அனுமதியும் அல்ல.