Wi-Fi تبدیل ہونے کے بعد SSID فائر وال اصول نے فلٹر کرنا بند کر دیا
SSID پر منحصر فائر وال اس وقت کھلا رہ جاتا ہے جب Android کوئی نامعلوم نیٹ ورک نام واپس کرتا ہے۔ شناخت کو نفاذ سے الگ کریں اور نامعلوم حالت کو اس کی اپنی پالیسی دیں۔
اصول سادہ تھا: صرف تب ٹریفک فلٹر کریں جب فون دفتر کے Wi-Fi سے منسلک ہو۔ یہ مہینوں چلا، پھر ایک صبح فون اسی SSID پر اسی چابی کے آئیکن کے ساتھ بیٹھا تھا اور فلٹرنگ رک گئی تھی۔ نیٹ ورک میں کچھ نہیں بدلا تھا؛ بدلا یہ تھا کہ ایپ نیٹ ورک کا نام دیکھ سکتی ہے یا نہیں۔ Android میں، «میں کس Wi-Fi پر ہوں» اور «اس ٹریفک کو روکو» دو الگ کام ہیں، اور جو فائر وال انہیں ملا دیتا ہے وہ ٹھیک اس وقت کھلا رہ جاتا ہے جب نام دستیاب نہ ہو۔
علامت: شناخت غائب ہوتی ہے اور پالیسی اس کے پیچھے چلتی ہے
SSID اصول ایک قدر پڑھتا ہے اور پھر شاخ منتخب کرتا ہے۔ جب پڑھائی کوئی مفید چیز واپس نہ کرے، کوڈ کو کچھ کرنا ہی ہوتا ہے، اور عام ڈیفالٹ «متوقع نیٹ ورک نہیں ہے، اس لیے فلٹر نہ کرو» ہے۔ یہی ڈیفالٹ اجازت کے مسئلے کو ٹریفک لیک میں بدل دیتا ہے۔ چابی کا آئیکن نظر آتا رہتا ہے کیونکہ VPN سروس ابھی چل رہی ہے؛ وہ صرف دوسری شاخ نافذ کر رہی ہے۔
نیٹ ورک کی بجائے واقعات کی ترتیب دیکھیں۔ مسترد شدہ اجازت ڈائیلاگ، وہ سسٹم اپ ڈیٹ جس نے SSID رسائی کو کسی دوسری اجازت کے پیچھے منتقل کیا، بند کی گئی لوکیشن سروسز، یا کام پروفائل پالیسی میں تبدیلی، یہ سب فون کے اسی رسائی نقطے پر رہتے ہوئے وہی نتیجہ دے سکتے ہیں۔
نام نامعلوم کیوں واپس آ سکتا ہے
WifiInfo.getSSID() موجودہ نیٹ ورک کی سروس سیٹ شناخت کنندہ واپس کرتا ہے، اور Android درج کرتا ہے کہ مقام کے حوالے سے حساس فیلڈز تک رسائی اجازت پر منحصر ہے۔ جب رسائی دستیاب نہ ہو، کال بلند آواز میں ناکام ہونے کی بجائے UNKNOWN_SSID واپس کرتی ہے۔ اس لیے خالی یا نامعلوم قدر اس بات کا ثبوت نہیں کہ فون نے Wi-Fi چھوڑ دیا؛ یہ ثبوت ہے کہ ایپ نیٹ ورک کی درجہ بندی نہیں کر سکتی۔
دو جانچیں ان حالتوں کو الگ کرتی ہیں۔ یقینی بنائیں کہ فون منسلک ہے اور دیکھیں سسٹم کیا رپورٹ کرتا ہے، پھر یقینی بنائیں کہ ایپ کے پاس اس Android ورژن پر درکار اجازت واقعی موجود ہے:
adb shell cmd wifi status
adb shell dumpsys package <your.app> | grep -i -E "ACCESS_FINE_LOCATION|NEARBY_WIFI_DEVICES"
اگر اسٹیٹس لائن منسلک نیٹ ورک دکھائے جبکہ ایپ نامعلوم نام دیکھے، تو آپ کا مسئلہ اجازت یا API سطح کا ہے، Wi-Fi کا نہیں۔ فائر وال اصولوں کو چھونے سے پہلے اسے درست کریں، کیونکہ آگے کا ہر اصول ایسی قدر کے خلاف جانچا جاتا ہے جو ایپ پڑھ نہیں سکتی۔
فلٹرنگ اصل میں کہاں چلتی ہے
مقامی Android فائر وال عام طور پر ٹریفک کو دور دراز سرور پر بھیجے بغیر VpnService ماڈل استعمال کرتا ہے: یہ ورچوئل انٹرفیس لیتا ہے، اپنے اصول لاگو کرتا ہے اور جو اجازت دیتا ہے آگے بھیجتا ہے۔ پلیٹ فارم فی صارف پروفائل ایک فعال VPN سروس کی اجازت دیتا ہے، اور دوسری پہلی پر تہہ بنانے کی بجائے اس کی جگہ لے لیتی ہے۔ اس لیے الگ فائر وال ایپ اور الگ کام VPN دو مرحلوں کی زنجیر نہیں بناتے؛ ان میں سے ایک جیتتا ہے۔
یہ SSID اصول کے لیے اہم ہے کیونکہ نفاذ کا نقطہ اور مشاہدے کا نقطہ مختلف اجزا ہیں۔ VpnService طے کرتا ہے کہ ڈیوائس سے کیا نکلتا ہے؛ Wi-Fi API صرف لیبل فراہم کرتی ہے۔ ایپ درست طریقے سے نافذ کر کے غلط درجہ بندی کر سکتی ہے، اور اس مضمون کی خرابی بالکل یہی ہے۔
نامعلوم کو اس کی اپنی پالیسی دیں
نیٹ ورک شناخت کو تین حالتوں کے طور پر لیں، اور اصول جاری کرنے سے پہلے ہر ایک کی پالیسی لکھیں۔ تیسری حالت ہی بھولی جاتی ہے، اور حملہ آور یا غلط کنفیگریشن آپ کو ٹھیک اسی میں رکھتی ہے۔
| Observation | Policy to specify |
|---|---|
| Expected SSID is readable | The explicit filtering policy you designed |
| A different SSID is readable | The default policy for untrusted networks |
| Unknown, changing or unreadable | Fail closed until classification is reliable |
بند ہو کر ناکام ہونے کا مطلب ہے کہ نامعلوم حالت سب سے آسان نہیں بلکہ سب سے سخت معقول پالیسی وراثت میں لیتی ہے۔ اگر اس سے نئے نیٹ ورک پر فون بیکار ہو جائے، تو درست حل جان بوجھ کر کیا گیا نظر آنے والا استثنا ہے، خالی قدر کی جانچ میں چھپا خاموش اعتماد کا فیصلہ نہیں۔
جانا پہچانا SSID ایک لیبل ہے، نیٹ ورک آپریٹر کا ثبوت نہیں۔ کوئی بھی دفتر کے نام سے رسائی نقطہ چلا سکتا ہے، اس لیے نام کا میل کبھی بھی حساس سیشن اور غیر قابل اعتماد حصے کے درمیان واحد چیز نہیں ہونا چاہیے۔
مستحکم حالت نہیں، تبدیلیوں کی جانچ کریں
مستحکم حالت کی جانچ اس نیٹ ورک پر پاس ہوتی ہے جہاں آپ نے اصول بنایا۔ ناکامیاں تبدیلیوں میں رہتی ہیں: مسترد شدہ اجازت، Wi-Fi سے موبائل، ایک SSID سے دوسرے، VPN سروس کا دوبارہ آغاز، اور دوسری VPN ایپ کا انٹرفیس سنبھال لینا۔ ہر ایک کے لیے فیصلہ کریں کہ موجودہ کنکشنز کا دوبارہ جائزہ لیا جاتا ہے یا نہیں اور حالت نامعلوم ہونے کے دوران محفوظ ٹریفک بلاک رہتا ہے یا نہیں۔
نتیجہ تین جملوں میں لکھیں: مشاہدہ شدہ شرط، فیصلہ نافذ کرنے والا جزو، اور جان بوجھ کر کیا گیا متبادل۔ ان تینوں میں سے کوئی ایک رہ جائے تو اصول ابھی پالیسی نہیں؛ یہ ایک اندازہ ہے جو دفتر کے نیٹ ورک پر اتفاقاً کام کرتا ہے۔