কেন VPN এক্সিট আর আপনার ব্রাউজারের ভাষা মেলে না
Accept-Language উত্তরের ভাষা চায়; VPN উৎস ঠিকানা বদলায়। কোনো সাইট স্থানীয় দেখালে তিনটি ইনপুট ঠিক করে কোনটি জিতেছে।
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
এখন মূল অংশটি ডিস্কে, তাই তুলনা পেজ নিয়ে, এমন হেডার নিয়ে নয় যা হয়তো কখনও পাঠানো হবে না। html ট্যাগের lang বৈশিষ্ট্য এবং দৃশ্যমান লেখা দেখুন, কারণ Content-Language ঐচ্ছিক এবং অনেক সার্ভার এটি বাদ দেয়। তাই একই URL-এ পুরো পেজ ইংরেজি থেকে ফরাসিতে বদলানো সাইট কেবল হেডারের তুলনায় অপরিবর্তিত দেখাতে পারে। যদি নথির ভাষা হেডার অনুসরণ করে আর এক্সিট স্থির থাকে, তবে হেডারই নির্ণায়ক ইনপুট ছিল এবং VPN-এর সেই পর্যবেক্ষণের সঙ্গে কোনো সম্পর্ক নেই।
এই পরীক্ষার জন্য সাইটের নিজস্ব ভাষা সুইচের বদলে দ্বিতীয় ব্রাউজার প্রোফাইল ব্যবহার করুন। সুইচ সাধারণত একটি কুকি লেখে, যা অন্য ইনপুট, এবং শেষে আপনি হেডারের বদলে কুকি মাপবেন।
q মানগুলোর অর্থ কী, আর কী নয়
RFC 9110-এর 12.5.4 ধারা Accept-Language-কে উত্তরের জন্য পছন্দের প্রাকৃতিক ভাষার তালিকা হিসেবে সংজ্ঞায়িত করে। প্রতিটি এন্ট্রি 0 থেকে 1 পর্যন্ত ওজন বহন করতে পারে, ওজনহীন পরিসরের ওজন 1, এবং ওজন 0 একটি ভাষাকে অগ্রহণযোগ্য বলে চিহ্নিত করে। এটি পছন্দের ক্রম, এর বেশি কিছু নয়।
এই মান কোনো অবস্থান প্রতিবেদন নয়, আস্থার স্কোর নয় এবং পরিচয় নয়। সার্ভার এটি উপেক্ষা করতে, নিজের একমাত্র অনুবাদ দিতে বা দেশভিত্তিক রিডাইরেক্টকে জিততে দিতে স্বাধীন। বিষয়বস্তুর দরকষাকষি সার্ভারের পছন্দ, এবং হেডার সেই পছন্দের ইনপুট, আদেশ নয়।
স্থানীয়কৃত পেজকে অবস্থান পরীক্ষা ভাবলে মানুষ এই অংশটাই মিস করে। হেডার বলে ব্যক্তি কোন ভাষা পড়তে পছন্দ করেন, এবং পছন্দ যেকোনো জায়গায় যেতে পারে।
আপনি আসলে কোন ভাষা পান তা তিনটি ইনপুট ঠিক করে
এগুলিকে এক এক করে আলাদা করুন, কারণ বাইরে থেকে কোনটি জিতেছে দেখা যায় না:
- হেডার। অন্য ভাষার তালিকার জন্য সেট করা দ্বিতীয় প্রোফাইল দিয়ে পরীক্ষা করুন, এবং বাকি সব স্থির থাকলে পেজ বদলায় কি না দেখুন।
- সংরক্ষিত পছন্দ। কুকি ছাড়া ব্যক্তিগত উইন্ডোতে পরীক্ষা করুন, বা সাইটের স্টোরেজ মুছে ফেলুন। অ্যাকাউন্ট সেটিংস এবং localStorage এন্ট্রি ভাষাকে মাসের পর মাস আটকে রাখতে পারে।
- URL বা রিডাইরেক্ট। স্পষ্ট ভাষা পথ, যেমন
/fr/, চেয়ে এবং উৎস ঠিকানার ভিত্তিতে রিডাইরেক্টের স্ট্যাটাস কোড দেখে পরীক্ষা করুন।
তিনটি পরীক্ষা সেই ক্রমে করুন এবং লিখুন কোনটি ফলাফল সরিয়েছে। VPN চালু করার পর ভাষা বদলানো একটি মাত্র পেজ লোড দুর্বল প্রমাণ, কারণ রিডাইরেক্ট এবং ক্যাশ করা কুকি দুটোই সেই ধারণা তৈরি করতে পারে।
VPN কী বদলায় আর কী বদলায় না
টানেল সার্ভার যে উৎস ঠিকানা দেখে তা বদলায়, এবং তার সঙ্গে সার্ভার IP ভূ-অবস্থান থেকে যা অনুমান করে তা সব। এটি ব্রাউজারের ভাষা পছন্দ আবার লেখে না, সংরক্ষিত সেটিং মুছে না এবং আপনি টাইপ করা URL বদলায় না। সেই ইনপুটগুলি যেখানে ছিল সেখানেই থাকে, তাই এক্সিট সরে যাওয়ার পরেও পেজ তার পুরনো ভাষা রাখতে পারে।
ভূ-অবস্থান নিজের শব্দ যোগ করে। ঠিকানা ডেটাবেস একে অপরের সঙ্গে মেলে না, এবং এক দেশে নিবন্ধিত এক্সিট অন্য দেশে ম্যাপ হতে পারে, যা দেশভিত্তিক রিডাইরেক্টকে আপনার ব্রাউজারের সঙ্গে সম্পর্কহীন কারণে ভুল দেখায়।
দ্রুত যাচাই সেগুলিকে আলাদা করে: পেজ নতুন করে চান, যে ঠিকানা আপনি উপস্থাপন করছেন তা টুকে রাখুন, তারপর উত্তরের ভাষা আপনার হেডার তালিকার সঙ্গে তুলনা করুন। যদি ভাষা এক্সিট দেশের বদলে আপনার তালিকার সঙ্গে মেলে, তাহলে হেডারই নির্ণায়ক ইনপুট ছিল এবং টানেলে ঠিক করার মতো কিছু নেই।
স্থানীয়কৃত পেজ কী প্রমাণ করে আর কী প্রমাণ করে না
এখানে গোপনীয়তার একটি বাস্তব বিষয় আছে, এবং তা মানুষ সাধারণত যেটি তোলেন তার চেয়ে ছোট। ভাষা পছন্দের সম্পূর্ণ তালিকা ফিঙ্গারপ্রিন্ট ইনপুট এবং আপনি কে বা কী পড়েন সে সম্পর্কে কিছু প্রকাশ করতে পারে। এটি পছন্দের প্রকৃত প্রকাশ, এবং ট্রাফিক টানেল থেকে বেরিয়ে গেছে এটা প্রমাণ করার সমান নয়।
স্থানীয়কৃত পেজ লিকের সূচক নয়। সত্যিই লিক পরীক্ষা করতে চাইলে সাইট যে এক্সিট ঠিকানা দেখে, নাম খোঁজার জন্য ব্যবহৃত রিজলভার পথ এবং WebRTC স্ট্যাক যে প্রার্থীরা প্রকাশ করে তা যাচাই করুন। সেই পরীক্ষাগুলি সেই প্রশ্নের উত্তর দেয় যার উত্তর পেজের ভাষা দিতে পারে না।
পরের বার কোনো সাইট আপনার দেশ জানে বলে মনে হলে, আগে অনুরোধের হেডার খুলুন। যদি উত্তরের ভাষা আপনার ব্রাউজারের তালিকার সঙ্গে মেলে, কিছুই লিক হয়নি, এবং যে স্তরটি দেখা উচিত তা আপনার সামনেরটাই।