Linux VPN жауаптары жоғалып бара ма? rp_filter мен маршрутты тексеріңіз
IPv4 көзін тексеру кері маршруты режимге сәйкес келмейтін пакетті қабылдамауы мүмкін. Өшіруден бұрын маршруттауды және нақты параметрді тексеріңіз.
Сұраныстар машинадан шығады, VPN серіктесі жауап береді, ал жауап сокетке ешқашан жетпейді. Туннель көтерілген, серіктестің журналдары пакеттің жіберілгенін көрсетеді, ал қолданбада бұл тыныштықты түсіндіретін ештеңе жоқ. Linux-та күдіктілердің бірі — кері жолды сүзу: кіріс IPv4 пакеті, егер көзді тексеру ядро сол көз үшін күтетін маршрутқа сәйкес келмесе, қабылданбауы мүмкін. Оны ретімен қарау себеп пе, әлде кездейсоқтық па екенін айтады. Ол сондай-ақ жетіспейтін маршрутты түзету үшін қауіпсіздік бақылауын өшіруден сақтайды.
Көзді тексеру нені шешеді
Ядро пакеттің көз мекенжайы ол келген интерфейс үшін сенімді ме екенін маршруттау кестесінен сол көзге қайтатын маршрутты іздеп тексереді. Егер кері маршрут басқа жерді нұсқаса, пакет кез келген қауіпсіздік қабырғасы ережесі немесе қолданба сокеті оны көрмей тұрып тасталуы мүмкін. Бұл тексеру кейбір жалғандау үлгілерін қиындату үшін бар, және сол себепті асимметриялық және саясатпен маршрутталған құрылымдар оған тап болады, ал сол желідегі кез келген қарапайым клиент жақсы жұмыс істейді. Қарапайым клиенттерде симметриялық маршруттау бар, және тексеру дәл соны болжайды.
Маңызды сөз — сенімді. Пакет толығымен заңды болып, бәрібір тексеруден өтпей қалуы мүмкін, өйткені заңдылық тексерілмейді.
Нақты режимді оқыңыз, бір өрісті емес
Үш режим бар: өшірілген, қатаң және жұмсақ. Қатаң жұмсаққа қарағанда басқа маршрут күтуін қояды, ал жаһандық параметр интерфейс бойынша параметрлермен әрекеттеседі, сондықтан бір файлды оқу нақты күшінде бар нәрсені қате сипаттауы мүмкін. Екеуін де оқыңыз, және оларды жауапты қабылдайтын интерфейсте оқыңыз, әдепкі маршруттың интерфейсінде емес.
sysctl net.ipv4.conf.all.rp_filter
sysctl net.ipv4.conf.<iface>.rp_filter
ip route get <source-of-the-reply>Үшінші жолдағы маршрут іздеу — адамдар өткізіп жіберетін бөлік. Ол ядроның көз туралы не ойлайтынын айтады, және бұл дәл тексерудің кірісі.
Тексеруді өзгертпей тұрып сәйкессіздікті табыңыз
Жауап неге сол интерфейске келетінін және оның кері маршруты басқаша болуы керек пе екенін анықтаңыз. Сұраныстарды бір жолмен жіберіп, жауаптарды екінші жолмен қайтаратын саясат ережесі заңды құрылым, және қатаң тексеру дәл сол құрылымды қабылдамайды. Саяси маршруттауда қолданылатын белгілер мұнда да маңызды болуы мүмкін, өйткені олар кері іздеу қайтаратын нәрсені өзгертеді.
Егер кері маршрут жай ғана жетіспесе, оны қосу тексеруді өшірудің орнына себепті түзетеді. Жетіспейтін маршрут, қауіпсіздік қабырғасының бас тартуы және қате трафик селекторы бірдей көрінетін симптом береді, және олардың тек біреуі көзді тексеруге қатысты.
Көз тексерулерін бірінші реакция ретінде жаһандық өшірмеңіз. Бұл нақты диагностиканы кейін есте сақтауға тура келетін кең мінез-құлық өзгерісіне айырбастайды.
Қорғауға болатын таңдамалы түзету
Егер тар түзету шынымен қажет болса, оны қажет ететін интерфейспен шектеңіз, себебін жазыңыз және ол қайта жүктеуден кейін сақталуы үшін сол интерфейске тиесілі конфигурацияға қойыңыз. Содан кейін сәтсіз болған дәл сол ағынды сол көзден сол межеге қайта тексеріңіз, ыңғайлы нәрсеге ping жасаудың орнына.
Әлі де қабылданбауға тиіс жағдайды қосыңыз. Егер бұл жағдай енді сәтті болса, түзету түзетпек болған бір жолдан көбірек әлсіретті.
IPv4 пен IPv6-ны бөлек ұстаңыз
Таныс көрінетін sysctl әр мекенжай отбасы үшін саясат емес. IPv6-ның өз мінез-құлқы мен өз параметрлері бар, және машина бір отбасында қатаң, екіншісінде жұмсақ бола алады, белгілі бір меже сәтсіз болмайынша ешкім байқамайды. Жүктеме екеуін де қолданса, екеуін де тексеріңіз.
Режимді, интерфейсті, маршрут іздеуінің шығысын және өзгеріс себебін бір жерде жазыңыз. Келесі адам параметрді табады және ешбір түсіндірме таппайды, содан кейін оны жояды немесе тиесілі емес жерге көшіреді.