Иконата на VPN казва свързано: какво всъщност ви казва
Икона на свързаност може да означава само тунел на едно приложение или един успешен тест. Определете обхвата, третирайте старите показания като неизвестни и пазете блокирането отделно.
Зелената икона на VPN е твърдение за нещо и полезният въпрос е за какво. На телефона тя може да отразява тунела на един клиент, транспорта на текущата мрежа или един успешен запрос към вътрешна страница. Тези наблюдения идват от различни източници, обновяват се с различна скорост и могат да си противоречат на един и същ екран. Затова иконата може да изглежда здрава, докато браузърът пред вас се проваля.
Определете обхвата, преди да четете цвета, иначе цветът ще отговори на въпрос, който никой не е задал.
Иконата отговаря на по-тесен въпрос, отколкото мислите
Започнете с един обявен обхват, например личния браузър, който използва одобрения личен тунел. Тунелът на работния профил не отговаря на този въпрос за лично приложение, а конфигурацията на VPN за отделно приложение може да изключи точно браузъра, който тествате. Локален клиент за филтриране може да показва свързаност, без да изпраща нищо към отдалечен шлюз, защото неговият тунел завършва на устройството.
В Android мрежовите обратни извиквания зад индикатора съобщават транспорти и възможности за дадена мрежа. VPN транспортът казва коя мрежа носи трафика, а не кои приложения или семейства адреси го използват.
Изградете таблицата на състоянията от доказателства
Три или четири състояния са достатъчни, ако всяко назовава доказателството зад себе си. Колоните по-долу започват от това, което може да се наблюдава, а не от цвета, който искате да покажете, и това пречи старото показание да се превърне в твърдение за успех.
| Signal actually observed | What it establishes | What remains open |
|---|---|---|
| Target client reports an established tunnel | That client believes its tunnel is up, within its own scope | Other apps, other profiles, other address families |
| Active network exposes a VPN transport | Some tunnel carries the current network | Which app it belongs to and where it exits |
| Probe to a private host returned fresh data | One request reached one destination at one time | Everything the probe does not touch |
| Callbacks stopped or data is older than the refresh window | Nothing current is known | Any statement about the tunnel state |
Последният ред е този, който на практика се изпуска. Индикатор, който запазва последната си стойност, когато източникът му умре, съобщава историята като настояще и потребителите го четат като живо състояние. Отбележете този случай като остарял или неизвестен и изберете формулировка, която не предполага тунел. След това оставете етикета да се промени веднага щом източникът спре.
Проверете какво всъщност съобщава устройството
Физическа лампа или уиджет трябва да се управляват от поддържано наблюдение, а не от догадка за последното известно добро състояние. Тези команди за Android показват транспорта и конфигурацията за постоянна връзка на платформата, без да инсталират нищо.
adb shell dumpsys connectivity | grep -i -A4 vpn adb shell settings get secure always_on_vpn_app adb shell settings get secure always_on_vpn_lockdown adb shell dumpsys netstats | head -40
Ключовете за постоянна връзка казват дали платформата е настроена да поддържа тунел и да блокира трафика без него; те не казват, че тунелът в момента е здрав. Съчетайте това отчитане на конфигурацията с нов тест, преди нещо да бъде показано като свързано.
Ако наблюдението не може да продължи, дисплеят трябва да може да го каже. Лампа, свързана с автоматизация, която вече не работи, е по-лоша от липсата на лампа, защото твърди състояние, което никой не измерва.
Пазете предупреждението отделно от принудата
Автоматизация, която забележи прекъсване, се задейства след събитието, така че не може да бъде границата, която спира пакет да избяга през промеждутъка. Ако директното връщане трябва да бъде забранено, настройте политиката за блокиране на платформата и я проверете, като изключите тунела умишлено. Индикаторът съобщава; политиката налага.
Задача за предупреждение, която изключва интерфейси, за да наложи спазване, може също да заключи устройството извън нужното му повторно свързване и да създаде цикъл, в който тунелът никога не се връща, а предупреждението никога не изчезва.
Решете какво трябва да показва дисплеят, когато наблюдателят не е сигурен, след което тествайте този случай, като спрете наблюдателя. Ако отговорът все още е свързано, индикаторът измерва миналото.