Отворете инструментите за разработчици, заредете страницата и прочетете заглавките на заявката, преди да правите какъвто и да е извод за VPN. Обикновено ще намерите ред Accept-Language, който иска определен набор от езици, и този ред идва от настройките на браузъра ви, а не от адреса на изхода. Франкоговорящ на изход в Токио все още изпраща френски, а сайт, който отговаря на френски, отговаря на заглавката. Тунелът не изтича само защото страницата е дошла на познат език.

Прочетете заглавката преди всичко друго

В настолен браузър отворете панела „Мрежа“, презаредете, щракнете върху заявката за документа и погледнете под заглавките на заявката. От терминал можете да видите същото без браузър и можете да замените стойността, за да тествате поведението на сайта:

curl -sS -D /tmp/h1 -o /tmp/b1 https://example.com
curl -sS -D /tmp/h2 -o /tmp/b2 -H 'Accept-Language: fr,en;q=0.6' https://example.com
grep -o 'lang="[^"]*"' /tmp/b1 /tmp/b2
diff /tmp/b1 /tmp/b2 | head -40

Сега тялото е на диска, така че сравнението е за страницата, а не за заглавка, която може никога да не бъде изпратена. Погледнете атрибута lang на тага html и видимия текст, защото Content-Language е по избор и много сървъри го пропускат. Затова сайт, който превключва цялата страница от английски на френски на същия URL, може да изглежда непроменен при сравнение само на заглавки. Ако езикът на документа следва заглавката, докато изходът остава непроменен, заглавката е била решаващият вход и VPN няма нищо общо с това наблюдение.

Използвайте втори профил на браузъра, а не превключвателя за език на самия сайт за този тест. Превключвателят обикновено записва бисквитка, което е различен вход, и накрая ще измервате бисквитката вместо заглавката.

Какво означават стойностите q и какво не

RFC 9110, раздел 12.5.4, дефинира Accept-Language като списък с предпочитани естествени езици за отговора. Всеки запис може да носи тегло от 0 до 1, диапазон без тегло има тегло 1, а тегло 0 маркира езика като неприемлив. Това е ред на предпочитание и нищо повече.

Стойността не е отчет за местоположение, нито оценка за увереност, нито идентичност. Сървърът е свободен да я игнорира, да даде единствения превод, с който разполага, или да остави пренасочване по държава да надделее. Съгласуването на съдържанието е избор на сървъра, а заглавката е вход за този избор, не команда.

Точно това пропускат хората, когато третират локализирана страница като тест за местоположение. Заглавката посочва кои езици човекът предпочита да чете, а предпочитанието може да пътува навсякъде.

Три входа решават какъв език всъщност получавате

Изолирайте ги един по един, защото отвън не виждате кой е надделял:

  • Заглавката. Тествайте с втори профил, настроен за различен списък с езици, и наблюдавайте как страницата се променя, докато всичко останало е постоянно.
  • Запазен избор. Тествайте в поверителен прозорец без бисквитки или изчистете хранилището на сайта. Настройките на профила и записите в localStorage могат да заковат език за месеци.
  • URL или пренасочване. Тествайте, като поискате явния езиков път, например /fr/, и като следите кодовете за състояние при пренасочване въз основа на адреса на източника.

Изпълнете трите теста в този ред и запишете кой е променил резултата. Едно зареждане на страница, което сменя езика след включване на VPN, е слабо доказателство, защото и пренасочване, и кеширана бисквитка могат да създадат това впечатление.

Какво променя VPN и какво не

Тунелът сменя адреса на източника, който сървърът вижда, а с него и всичко, което сървърът извлича от геолокацията по IP. Той не пренаписва езиковите предпочитания на браузъра, не изчиства запазена настройка и не променя URL адреса, който сте въвели. Тези входове остават точно там, където са били, така че страницата може да запази стария си език, след като изходът се премести.

Геолокацията добавя собствен шум. Базите с адреси си противоречат, а изход, регистриран в една държава, може да бъде отнесен към друга, което прави пренасочването по държава да изглежда грешно по причини, които нямат нищо общо с браузъра ви.

Една бърза проверка ги разделя: поискайте страницата наново, отбележете адреса, който представяте, след което сравнете езика на отговора със списъка в заглавката си. Ако езикът съвпада с вашия списък, а не с държавата на изхода, заглавката е била решаващият вход и в тунела няма какво да се поправя.

Какво доказва локализираната страница и какво не

Тук има истинска точка за поверителност и тя е по-малка от тази, която хората обикновено изтъкват. Пълният списък с езикови предпочитания е вход за снемане на отпечатък и може да разкрие нещо за това кой сте и какво четете. Това е истинско разкриване на предпочитание и не е същото като доказателство, че трафикът е излязъл извън тунела.

Локализираната страница не е индикатор за изтичане. Ако наистина искате да тествате за изтичане, проверете адреса на изхода, който сайтът вижда, пътя на резолвера, използван за търсене на имена, и кандидатите, които стекът на WebRTC разкрива. Тези тестове отговарят на въпроса, на който езикът на страницата не може.

Следващия път, когато даден сайт сякаш знае държавата ви, първо отворете заглавките на заявката. Ако езикът на отговора съвпада със списъка на браузъра ви, нищо не е изтекло и слоят, който трябва да разгледате, е този пред вас.

Подобни статии