Проверете програмно дали отворената WLAN мрежа наистина е отворена

има два вида отворени (некриптирани) WLAN мрежи: една, която е наистина отворена и осигурява IP и мрежов достъп след свързване към нея, и такава, при която е необходимо допълнително удостоверяване след свързване към нея (обикновено чрез уеб страница, където трябва да се въвеждат някои специални идентификационни данни бъдат въведени, които принадлежат на доставчика на тази услуга).

Възможно ли е да разберете какъв вид "отворена" мрежа е налична преди да се свържете с нея? Вероятно по някакъв начин чрез обектите ScanResult, които се връщат като резултат към WiFiManager.startScan()?

Благодаря!


person Elmi    schedule 29.03.2015    source източник
comment
моля, прочетете [официалния документ] (developer.android.com/reference/ android/net/wifi/) помага ви,   -  person Fasiha    schedule 29.03.2015


Отговори (1)


Възможно ли е да разберете какъв вид "отворена" мрежа е налична, преди да се свържете с нея?

Накратко, не. Android WifiManager (и наистина мрежовите драйвери/стек на всички компютри) се занимават само с комуникации на ниско ниво. Разглеждайки OSI модела, предимно физическото ниво, нивото на връзката за данни и нивото на мрежата.

WLAN хардуерът, драйверите и т.н. очевидно имат допълнителни притеснения, които включват сканиране за налични AP и проверка дали предлагат „отворен“ достъп или изискват удостоверяване, въпреки че във втория случай се отнася само за удостоверяване в стил WEP/WPA и не взема предвид по-високо ниво на контрол/сигурност на транспортния слой, сесийния слой и др

Видът удостоверяване чрез уеб страници, който описвате, често е изискване в кръчми, кафенета, хотели и т.н., където WLAN е ефективно „оградена“ и целият HTTP трафик трябва да преминава през това, което всъщност е HTTP прокси сървър (който вероятно също налага проверка на съдържанието / блокиране). В случай на този вид WLAN услуга обикновено се разрешава само уеб трафик - например ще бъде предотвратен опит за свързване с външния свят с друг протокол освен HTTP/HTTPS.

Следователно всеки WLAN (или дори LAN) клиентски хардуер, драйвери, стекове няма начин да открие какво е/не е разрешено или необходимо, когато се опитва да се свърже с отдалечени/външни сайтове и услуги.

person Squonk    schedule 29.03.2015