Mesh Wi-Fi স্যাটেলাইট VPN রাউটার ব্যবহার করছে কি না তা যাচাই করার উপায়
Mesh স্যাটেলাইটের ক্লায়েন্টরা VPN দিয়ে যায় কি না তা প্রমাণ করতে ডিফল্ট গেটওয়ে, নোডের ফরোয়ার্ডিং মোড এবং রাউটারের স্টেট টেবিল দেখুন।
যে স্যাটেলাইট বেস রাউটারের একই Wi-Fi নামে সাড়া দেয়, তা তার ক্লায়েন্টদের প্যাকেট কোথায় যায় সে সম্পর্কে প্রায় কিছুই বলে না। নোড একটি রেডিও এবং সেতু, যতক্ষণ না উল্টোটা প্রমাণিত হয়। বেরোনোর পথ ঠিক করে প্রতিটি ক্লায়েন্ট যে ডিফল্ট গেটওয়ে পায় এবং তার সামনে থাকা নোডের ফরোয়ার্ডিং মোড। এই পাঁচটি যাচাই ক্লায়েন্ট থেকে বাইরের দিকে করুন, তাহলে স্পিড টেস্টের ধারণার বদলে এমন উত্তর পাবেন যা আপনি রক্ষা করতে পারবেন।
ক্লায়েন্ট আসলে যে গেটওয়ে পেয়েছে তা পড়ুন
ক্লায়েন্টে রুট টেবিল ও নেবার টেবিল ছাপুন। ডিফল্ট রুট সেই ঠিকানার নাম বলে যা ট্রাফিক সামনে পাঠায়; নেবার এন্ট্রি সেই MAC-এর নাম বলে যা ওই ঠিকানার মালিক। রাউটারের ডিভাইস তালিকা নয়, ক্লায়েন্ট ব্যবহার করুন, কারণ ডিভাইস তালিকা সংযোগ দেখায়, পথ নয়।
ip route show default
ip -6 route show default
ip neigh showWindows একই তথ্য অন্য আকারে ছাপে: ipconfig /all ডিফল্ট গেটওয়ে দেয় এবং arp -a MAC দেয়। macOS-এ route -n get default ও arp -an একই কাজ করে।
সেই গেটওয়ে দুটি ঠিকানার সঙ্গে তুলনা করুন যা আপনি আগেই জানেন: বেস রাউটারের LAN ঠিকানা এবং স্যাটেলাইটের ব্যবস্থাপনা ঠিকানা। গেটওয়ে যদি রাউটারের LAN ঠিকানা হয়, ক্লায়েন্ট রাউটারে সেতুবদ্ধ এবং ওই নেটওয়ার্কের জন্য রাউটারের নীতি অপরিবর্তিতভাবে প্রযোজ্য। গেটওয়ে যদি স্যাটেলাইটের ঠিকানা হয়, স্যাটেলাইট রাউটিং করছে এবং রাউটার ক্লায়েন্টের প্যাকেট কখনোই LAN ট্রাফিক হিসেবে দেখে না; সিদ্ধান্ত নোডেই নিতে হবে, নইলে একেবারেই নেওয়া হবে না।
নোড আসলে কোন মোডে আছে তা নিশ্চিত করুন
Mesh পণ্য ভিন্ন আচরণের জন্য তিনটি শব্দ পুনরায় ব্যবহার করে, তাই অ্যাপের লেবেলের চেয়ে প্যাকেটের পথে বেশি ভরসা করুন। সেতু বা অ্যাক্সেস পয়েন্ট মোড ফ্রেম পাঠায়। রাউটার মোড সাবনেট শেষ করে ও DHCP চালায়। অতিথি মোড সাধারণত ক্লায়েন্টকে নিজের নিয়মসহ আলাদা VLAN-এ রাখে। অন্য রাউটারের পেছনে রাউটার মোডের নোড ডাবল NAT, এবং তার ক্লায়েন্টরা VPN রাউটারে আগেই অনূদিত হয়ে পৌঁছায়, যা উৎস ঠিকানাভিত্তিক নীতিকে দুর্বল করে।
| What you see | What it means | Next check |
|---|---|---|
| Gateway is the router's LAN address, one MAC for every node | The node bridges; the router owns the policy | Router policy for that LAN and VLAN |
| Gateway is the node's address and DHCP comes from the node | The node routes; double NAT | Node's own VPN client, or a static route plus policy on the router |
| Gateway is a different subnet on a guest SSID | Guest VLAN, often client-isolated | Whether that VLAN is inside the tunnel policy |
| Gateway changes when you walk into another room | Roaming across segments | Repeat the check per node |
MAC নির্ধারণ করতে নোডে লাগানো লেবেল পড়ুন এবং এই কমান্ডের ফলাফলের সঙ্গে তুলনা করুন: ip neigh. নির্মাতারা বেস MAC ছাপেন এবং প্রতিটি রেডিওর MAC একটি বাইট বাড়িয়ে বের করেন, তাই শেষ হেক্স অঙ্ক আলাদা হয়; পুরো ঠিকানার বদলে প্রিফিক্স তুলনা করুন। গেটওয়ের MAC যদি রাউটারের LAN ইন্টারফেসের হয়, নোড ওই ক্লায়েন্টের জন্য রাউটিং করছে না।
বেরোনোর প্রমাণ রাউটারে নিন, স্পিড টেস্টে নয়
রাউটারের দিকের স্টেটই একমাত্র জায়গা যা অনুবাদ দেখায়। OpenWrt-এ নীতি নিয়ম ও রাউটিং টেবিল তালিকাভুক্ত করুন, তারপর নিশ্চিত করুন টানেলের সাম্প্রতিক handshake আছে:
ip rule show
ip route show table all | grep default
wg showpfSense বা OPNsense-এ একই প্রমাণ মেলে এই কমান্ডগুলোতে: pfctl -sr নিয়মের জন্য, pfctl -ss সক্রিয় স্টেটের জন্য, এবং WireGuard-এর স্ট্যাটাস পেজে পিয়ার কাউন্টারের জন্য, এই নথি অনুসারে: WireGuard ক্লায়েন্ট ডকুমেন্টেশন। স্টেট টেবিল ক্লায়েন্টের ঠিকানা দিয়ে ফিল্টার করুন। স্টেট যদি ক্লায়েন্টকে টানেলের ঠিকানায় অনূদিত দেখায়, ট্রাফিক টানেলের ভিতরে; যদি WAN ঠিকানা দেখায়, তবে নয়, ড্যাশবোর্ডের ব্যাজ যা-ই বলুক।
ক্লায়েন্ট থেকে traceroute এমন একটি তথ্য যোগ করে যা স্টেট টেবিল দিতে পারে না: প্রথম হপ। প্রথম হপ যদি রাউটারের LAN ঠিকানা হয়, ক্লায়েন্ট সরাসরি রাউটারে পৌঁছেছে। যদি তা নোডের ঠিকানা হয় এবং পরে আরেকটি ব্যক্তিগত হপ থাকে, আপনি রাউটেড সেগমেন্টে আছেন, এবং সেই দ্বিতীয় হপই সেই ডিভাইস যা নীতি ধরে রাখবে।
নোড ঠিকানা ছাড়া আর কী বিতরণ করে দেখুন
DHCP অপশন লিজের সঙ্গে চলে, তাই নিজের DHCP দেওয়া নোড নিজের DNS ও নিজের IPv6 রাউটার ঘোষণাও দিতে পারে। তাই ক্লায়েন্ট টানেল দিয়ে বেরিয়েও নোডে থাকা resolver-এ কোয়েরি পাঠাতে পারে, বা এমন বৈশ্বিক IPv6 ঠিকানা নিতে পারে যা টানেলের নীতি কখনোই ঢাকে না। দুটোই ক্লায়েন্টে ছাপুন:
cat /etc/resolv.conf
ip -6 addr show scope globalresolver যদি নোড হয় এবং নোড রাউটারে পাঠায়, DNS টানেলের পথে চলে। নোড যদি স্থানীয়ভাবে সমাধান করে বা প্রদানকারীর resolver-এর দিকে ইঙ্গিত করে, কোয়েরিগুলো টানেলের বাইরে যায়, এমনকি HTTP না করলেও। IPv6 একই পরীক্ষা দাবি করে: বৈশ্বিক ঠিকানা এবং টানেল এড়িয়ে যাওয়া ডিফল্ট রুট মানে লিক, এবং Mesh ফার্মওয়্যার প্রায়ই IPv6 চালু রেখে দেয় যখন VPN নীতি কেবল IPv4 ঢাকে।
টানেল ইচ্ছাকৃতভাবে ভাঙুন, তারপর ফল লিখুন
টানেল নামিয়ে সেই নোডে যুক্ত ক্লায়েন্ট দেখুন, রাউটারের পাশে বসা ক্লায়েন্ট নয়। ping এবং curl কম সময়সীমাসহ যথেষ্ট; প্রশ্ন হলো ট্রাফিক থামে না WAN-এ ফিরে যায়। টানেল রাউটারের নিজের সার্ভিস কমান্ডে থামান, যেমন wg-quick down wg0 বা OpenVPN সার্ভিস বন্ধ করে, এবং পরীক্ষা ছোট রাখুন।
ক্লায়েন্ট চলতে থাকলে নোড বা রাউটার ওই সেগমেন্টের জন্য খোলাখুলি ব্যর্থ হচ্ছে, এবং mesh চুপচাপ kill switch বাতিল করেছে। টানেল ফিরিয়ে আনুন, handshake কাউন্টার সরেছে নিশ্চিত করুন, এবং তৃতীয় ধাপের স্টেট টেবিল যাচাই আবার করুন।
প্রতিটি নোডের জন্য একটি সারি লিখুন: লেবেল, SSID, গেটওয়ে ঠিকানা, MAC প্রিফিক্স, বেরোনো নিশ্চিত হ্যাঁ বা না, IPv6 আচ্ছাদিত এবং টানেল বন্ধ থাকলে আচরণ। রোমিং সেই জায়গা যেখানে উত্তর বদলায়, তাই আপনি সত্যিই যে ঘরগুলো ব্যবহার করেন সেগুলো পরীক্ষা করুন। একটি সারি বাকিগুলোর সঙ্গে না মিললে সেই নোডই তদন্তের বিষয়, এবং সংশোধন সেই ডিভাইসে করতে হবে যার কাছে ওই সারির গেটওয়ে আছে।