Сұрақ бір тексеру сияқты естіледі, бірақ шын мәнінде бұл үш шешім. Binding request қай маршрутты алады, ядро сол маршрут үшін қандай көз таңдайды және жолда бірдеңе сол көзді қайта жаза ма. Үшеуінің кез келгенін өзгертсеңіз, STUN сервері хабарлайтын адрес те онымен бірге өзгереді. Сондықтан VPN роутерде тұр деген тұжырым өздігінен еш нәрсе дерлік айтпайды.

Шешім үш фактіге сүйенеді

Біріншіден, маршрут: саясат ережелері мен маршруттау кестесі сұрау туннель арқылы ма, әлде қарапайым WAN арқылы ма шығатынын шешеді, ал алынып тасталған меже туннель көтерілген кезде де екінші жолды таңдайды. Екіншіден, көз: ядро таңдалған маршрут үшін көз таңдайды, және бұл таңдау маршруттың қалаулы көзіне және сәйкес келген кез келген ережеге байланысты. Үшіншіден, трансляция: жолдағы NAT таңдалған көзді ауыстырады. Шағылысқан адрес — үшеуінің көбейтіндісі, туннельдің қасиеті емес.

Үшеуінің бірін өзгертсеңіз, жауап өзгереді, ал әр компонент өз журналында әлі де сау көрінеді. Бұл осы диагностиканың тұрып қалуының әдеттегі себебі.

Бастамас бұрын тексеріп жатқан ағын үшін үш фактіні жазып алыңыз. Интерфейс, маршрут және трансляция ережесі нәтижені болжауға жетеді, ал дәл сол болжам тосын нәрсені ақпаратты етеді. Үшеуінің бірін толтыра алмасаңыз, сол олқылық нақты табылым.

Бір binding request-ті жол бойымен қадағалаңыз

STUN binding request серверден байқалған көз тасымалдау адресін хабарлауды сұрайды. Жауап сұраудың жүріп өткен жолын сипаттайды, клиент машинасындағы интерфейстердің тізімін емес. Екі жолмен келген екі сұрау шынымен екі түрлі адресті хабарлайды.

Path takenSource the reflector seesWhat it means
Tunnel to a public exit that translatesThe exit's public addressThe reflector learns nothing about the LAN
Tunnel to a private reflector, translated to the tunnel address, no later translationThat tunnel addressAn internal identifier is disclosed to that reflector
Excluded flow over the ordinary WANThe WAN addressThe tunnel was not used at all

Бұл кестені шарттар жиынтығы ретінде оқыңыз, жеткізушілер мәзірі ретінде емес. Ортаңғы жол жеке шағылыстырғыш туннельдің өз маршруттауы мен peer саясаты бойынша қолжетімді болуын талап етеді; бұл тексеруге болатын конфигурация фактісі, ал тіркелгі деңгейі білдіретін нәрсе емес. Төменгі жол саясат үшін әдетте маңызды, өйткені ол трафик туннель ішінде қалуы тиіс еді. Олардың арасында шығыс трансляциялайтын, ал шағылыстырғыш тек шығысты көретін қарапайым жағдай тұр.

Хост кандидаттары мен серверлік-рефлексивті кандидаттар түрлі механизмдерден келеді, сондықтан кандидаттар тізімі медианың қай жолды нақты пайдаланғанын айтпайды. Таңдалған жұпты оқыңыз, жинау журналын емес, сессияның қайда кеткенін білгіңіз келсе.

Роутердің туннель адресі не емес

Роутерге берілген туннель адресі роутердегі интерфейске тиесілі. LAN хостындағы браузердің өз интерфейс адрестері бар және роутердің туннель интерфейсін тікелей көрмейді. Оларды ауыспалы деп қараса, веб-беттің нені біле алатыны туралы сенімді бірақ қате жауаптар шығады.

Жіберу — оларды байланыстыратын нәрсе. Сұрау роутерден маршрутталған трафик ретінде өтеді, ал оның көзі маршруттау мен трансляция жасаған нәрсе.

Егер туннель жолы LAN көзін сақтаса, жеке шағылыстырғыш сол LAN адресін біле алады, бұл нақты ашылу және туннель адресінен өзгеше. Егер жол туннель адресіне трансляцияласа, шағылыстырғыш оның орнына туннель адресін біледі. Екі нәтиже де бір хосттағы бір браузерге сәйкес келеді, сондықтан бақылауды нақты ағынға байланыстыру керек. Қолданбаны кінәламас бұрын ядродан қандай көзді пайдаланатынын сұраңыз.

Ашылуға қарсы айналып өту: екі табылым, екі түзету

Шағылысқан туннель адресі рұқсат берген жол бойынша ішкі идентификаторды ашады. WAN арқылы тікелей сұрау талап еткіңіз келген жолды айналып өтеді. Біріншісі — ақпарат мәселесі, екіншісі — орындау мәселесі, және олар түрлі жерде түзетіледі. Оларды бір сөзге қоссаңыз, екеуіне де қатысы жоқ түзету шығады.

WebRTC мұны қате етпей-ақ көрінеді етеді, өйткені кандидатты жинау оны таңдаумен бірдей емес.

ip route get 203.0.113.7 from 192.0.2.25
ip rule show

Рұқсат еткен әрбір шағылыстырғыш адресі үшін маршрут сұрауын осы ағын алып жүреді деп күткен көзбен орындаңыз, содан кейін алынып тасталған ауқымдар үшін қайта орындап, қосалқы нұсқа нені таңдайтынын көріңіз. Екі жауапты жазып алған саясатпен салыстырыңыз. Олар ойламаған түрде айырылса, браузердің кандидаттар тізімін түсіндірудің қажеті жоқ түзету нүктесін таптыңыз.

Қатысты мақалалар