నియమం సులభం: ఫోన్ కార్యాలయ 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 కేవలం లేబుల్ ఇస్తుంది. యాప్ సరిగ్గా అమలు చేసి తప్పుగా వర్గీకరించగలదు, ఈ వ్యాసంలోని వైఫల్యం సరిగ్గా అదే.

తెలియని దానికి దాని సొంత విధానం ఇవ్వండి

నెట్‌వర్క్ గుర్తింపును మూడు స్థితులుగా పరిగణించి, నియమాన్ని విడుదల చేసే ముందు ప్రతిదానికీ విధానం రాయండి. మూడవ స్థితి మరచిపోయేది, దాడి చేసేవాడు లేదా తప్పు కాన్ఫిగరేషన్ మిమ్మల్ని సరిగ్గా అందులోనే ఉంచుతుంది.

ObservationPolicy to specify
Expected SSID is readableThe explicit filtering policy you designed
A different SSID is readableThe default policy for untrusted networks
Unknown, changing or unreadableFail closed until classification is reliable

మూసివేసి విఫలం కావడం అంటే తెలియని స్థితి అత్యంత సౌకర్యవంతమైనది కాదు, అత్యంత కఠినమైన సమంజసమైన విధానాన్ని వారసత్వంగా పొందుతుంది. అది కొత్త నెట్‌వర్క్‌లో ఫోన్‌ను ఉపయోగించలేనిదిగా చేస్తే, సరైన పరిష్కారం ఉద్దేశపూర్వకంగా చేసిన కనిపించే మినహాయింపు, ఖాళీ విలువ తనిఖీలో దాగిన నిశ్శబ్ద నమ్మకం నిర్ణయం కాదు.

పరిచిత SSID ఒక లేబుల్, నెట్‌వర్క్ ఆపరేటర్‌కు రుజువు కాదు. ఎవరైనా కార్యాలయం పేరుతో యాక్సెస్ పాయింట్ నడపగలరు, కాబట్టి పేరు సరిపోలిక సున్నిత సెషన్ మరియు నమ్మదగని విభాగం మధ్య ఉన్న ఏకైక విషయం కాకూడదు.

స్థిర స్థితి కాదు, పరివర్తనలను పరీక్షించండి

స్థిర స్థితి పరీక్ష నియమాన్ని నిర్మించిన నెట్‌వర్క్‌లో ఉత్తీర్ణమవుతుంది. వైఫల్యాలు పరివర్తనల్లో నివసిస్తాయి: తిరస్కరించిన అనుమతి, Wi-Fi నుండి మొబైల్‌కు, ఒక SSID నుండి మరొకదానికి, VPN సేవ పునఃప్రారంభం, మరియు మరో VPN యాప్ ఇంటర్‌ఫేస్‌ను స్వాధీనం చేసుకోవడం. ప్రతిదానికీ, ఉన్న కనెక్షన్లు తిరిగి పరిశీలించబడతాయా మరియు స్థితి తెలియనిదిగా ఉన్నప్పుడు రక్షిత ట్రాఫిక్ నిరోధించబడి ఉంటుందా అని నిర్ణయించండి.

ఫలితాన్ని మూడు వాక్యాల్లో రాయండి: గమనించిన షరతు, నిర్ణయాన్ని అమలు చేసే భాగం, మరియు ఉద్దేశపూర్వక ప్రత్యామ్నాయం. ఈ మూడింటిలో ఒకటి లేకపోతే నియమం ఇంకా విధానం కాదు; అది కార్యాలయ నెట్‌వర్క్‌లో యాదృచ్ఛికంగా పనిచేసే ఊహ.

సంబంధిత వ్యాసాలు