ਬਲਾਕ ਕੀਤੀ Android ਐਪ ਅਜੇ ਵੀ ਨੈੱਟਵਰਕ ਵਰਤੋਂ ਕਿਉਂ ਦਿਖਾਉਂਦੀ ਹੈ
ਵਰਤੋਂ ਕਾਊਂਟਰ ਇੱਕ ਸੀਮਾ ’ਤੇ ਬਾਈਟ ਮਾਪਦਾ ਹੈ, ਸਫਲ ਬੇਨਤੀ ਨਹੀਂ। ਸਮਾਂ ਵਿੰਡੋ, UID ਆਰੋਪਣ ਅਤੇ ਇਹ ਜਾਂਚੋ ਕਿ VPN ਸੇਵਾ ਕਿਸ ਐਪ ਕੋਲ ਹੈ।
ਤੁਸੀਂ ਆਪਣੇ Android VPN ਫਾਇਰਵਾਲ ਵਿੱਚ ਇੱਕ ਐਪ ਬਲਾਕ ਕਰਦੇ ਹੋ, ਐਪ ਕੰਮ ਕਰਨਾ ਬੰਦ ਕਰ ਦਿੰਦੀ ਹੈ, ਅਤੇ ਇਸਦੀ ਵਰਤੋਂ-ਲਾਈਨ ਵਧਦੀ ਰਹਿੰਦੀ ਹੈ। ਲੁਭਾਉਣ ਵਾਲਾ ਸਿੱਟਾ ਇਹ ਹੈ ਕਿ ਬਲਾਕ ਲੀਕ ਹੋ ਗਿਆ, ਜਾਂ ਕਾਊਂਟਰ ਖਰਾਬ ਹੈ। ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੋਈ ਨਹੀਂ ਨਿਕਲਦਾ। ਵਰਤੋਂ-ਰਿਕਾਰਡ ਕਹਿੰਦਾ ਹੈ ਕਿ ਕਿਸੇ ਨਿਰੀਖਣ ਬਿੰਦੂ ’ਤੇ ਉਸ ਪਛਾਣ ਨੂੰ ਬਾਈਟ ਆਰੋਪਿਤ ਕੀਤੇ ਗਏ ਸਨ; ਇਹ ਨਹੀਂ ਦੱਸਦਾ ਕਿ ਕਿਸੇ ਦੂਰ ਦੀ ਸੇਵਾ ਨੇ ਬੇਨਤੀ ਸਵੀਕਾਰ ਕੀਤੀ ਜਾਂ ਨਹੀਂ। ਇੱਕ ਵਾਰ ਜਦੋਂ ਤੁਸੀਂ ਜਾਣ ਲੈਂਦੇ ਹੋ ਕਿ ਕਿਹੜੀ ਸੀਮਾ ਮਾਪੀ ਗਈ ਅਤੇ ਕਿਹੜੀ ਪਛਾਣ ’ਤੇ ਇਹ ਲਾਈ ਗਈ, ਦੋਵੇਂ ਨਿਰੀਖਣ ਇੱਕ-ਦੂਜੇ ਦਾ ਵਿਰੋਧ ਕਰਨਾ ਬੰਦ ਕਰ ਦਿੰਦੇ ਹਨ।
ਕਾਊਂਟਰ ਬਾਈਟ ਮਾਪਦਾ ਹੈ, ਡਿਲੀਵਰੀ ਨਹੀਂ
Android ਟ੍ਰੈਫਿਕ ਨੂੰ ਇੱਕ UID ਨੂੰ ਆਰੋਪਿਤ ਕਰਦਾ ਹੈ ਅਤੇ ਦੋਵੇਂ ਦਿਸ਼ਾਵਾਂ ਵਿੱਚ ਗਿਣਦਾ ਹੈ, ਅਤੇ ਇਹ ਇੰਟਰਫੇਸ ਸੀਮਾ ’ਤੇ ਕਰਦਾ ਹੈ, ਉਸ ਪਲ ਨਹੀਂ ਜਦੋਂ ਐਪ ਦੀ ਬੇਨਤੀ ਸਫਲ ਹੁੰਦੀ ਹੈ।
ਅਸਵੀਕਾਰ ਕੀਤੀ ਕਨੈਕਸ਼ਨ ਕੋਸ਼ਿਸ਼ ਵੀ ਪੈਕੇਟ ਹਿਲਾਉਂਦੀ ਹੈ: SYN, ਰੀਸੈਟ ਜਾਂ ਉਸ ਤੋਂ ਬਾਅਦ ਦੇ ਮੁੜ-ਪ੍ਰਸਾਰਣ, ਨਾਲ ਹੀ ਉਹ DNS ਪੁੱਛਗਿੱਛ ਜੋ ਦੋਵਾਂ ਤੋਂ ਪਹਿਲਾਂ ਆਈ ਸੀ। ਕੁਝ ਵੀ ਪਹੁੰਚਾਏ ਬਿਨਾਂ ਵੀ ਉਹ ਬਾਈਟ ਮੌਜੂਦ ਹਨ, ਅਤੇ ਕੁਝ ਰਾਹਾਂ ’ਤੇ ਕਿਸੇ ਵੀ ਫਿਲਟਰ ਦੇ ਫੈਸਲੇ ਤੋਂ ਪਹਿਲਾਂ ਉਹ ਗਿਣੇ ਜਾਂਦੇ ਹਨ।
ਇਸੇ ਲਈ ਬਲਾਕ ਕੀਤੀ ਐਪ ਦੀ ਲਾਈਨ ਵਧ ਸਕਦੀ ਹੈ ਜਦੋਂ ਕਿ ਹਰ ਬੇਨਤੀ ਫੇਲ ਹੁੰਦੀ ਹੈ। ਕਾਊਂਟਰ «ਇਸ ਪਛਾਣ ਨੂੰ ਕਿੰਨੇ ਬਾਈਟ ਆਰੋਪਿਤ ਕੀਤੇ ਗਏ» ਦਾ ਜਵਾਬ ਦਿੰਦਾ ਹੈ, «ਕੀ ਇਹ ਪਛਾਣ ਇੰਟਰਨੈੱਟ ਤੱਕ ਪਹੁੰਚੀ» ਦਾ ਨਹੀਂ। ਇੱਕ ਚਾਰਟ ਸਵੀਕਾਰ ਕੀਤੇ ਪ੍ਰਵਾਹ ਨੂੰ ਨਮਰਤਾ ਨਾਲ ਅਸਵੀਕਾਰ ਕੀਤੇ ਹੈਂਡਸ਼ੇਕ ਤੋਂ ਵੱਖ ਨਹੀਂ ਕਰ ਸਕਦਾ, ਅਤੇ ਦੋਵੇਂ ਦਿਸ਼ਾਵਾਂ ਜੋੜਨ ਵਾਲਾ ਕੁੱਲ ਵੀ ਨਹੀਂ।
ਆਰੋਪਣ ਨਿਸ਼ਾਨ ਨਹੀਂ, UID ਦੀ ਪੈਰਵੀ ਕਰਦਾ ਹੈ
ਲਾਈਨ ਪ੍ਰਤੀ UID ਹੈ, ਅਤੇ ਇੱਕ UID ਨੂੰ ਇੱਕ ਤੋਂ ਵੱਧ ਪੈਕੇਜ ਸਾਂਝਾ ਕਰ ਸਕਦੇ ਹਨ, ਜਦੋਂ ਕਿ ਦਿਸਣ ਵਾਲੀ ਐਪ ਕੰਮ ਆਪਣੀ ਵੱਖਰੀ ਪਛਾਣ ਹੇਠ ਚੱਲਦੇ ਹਿੱਸੇ ਨੂੰ ਸੌਂਪ ਸਕਦੀ ਹੈ। ਸਾਂਝੇ WebView ਪ੍ਰੋਸੈਸ ਵੱਲੋਂ ਖਿੱਚਿਆ ਬ੍ਰਾਊਜ਼ਰ ਟੈਬ, ਬੈਕਗਰਾਊਂਡ ਸਿੰਕ ਸੇਵਾ, ਜਾਂ ਮੁੱਖ ਐਪ ਦੇ ਨਾਲ ਸਥਾਪਿਤ ਸਾਥੀ ਪੈਕੇਜ — ਸਾਰੇ ਅਜਿਹਾ ਟ੍ਰੈਫਿਕ ਬਣਾਉਂਦੇ ਹਨ ਜੋ ਵਰਤੋਂ ਸਕਰੀਨ ਤੁਹਾਡੇ ਉਮੀਦ ਨਾ ਕੀਤੇ ਨਾਮ ਹੇਠ, ਜਾਂ ਤੁਹਾਡੇ ਬਲਾਕ ਕੀਤੇ ਐਪ ਹੇਠ ਦਿਖਾ ਸਕਦੀ ਹੈ। ਬਲਾਕ ਕੀਤਾ ਪੈਕੇਜ ਅਤੇ ਉਸ ਦੀਆਂ ਬੇਨਤੀਆਂ ਢੋਣ ਵਾਲਾ ਸਹਾਇਕ ਦੋ ਵੱਖਰੇ ਵਿਸ਼ੇ ਹਨ, ਅਤੇ ਨਿਯਮ ਨੇ ਉਨ੍ਹਾਂ ਵਿੱਚੋਂ ਸਿਰਫ਼ ਇੱਕ ਨੂੰ ਕਵਰ ਕੀਤਾ ਸੀ।
ਜਦੋਂ ਅੰਕ ਗਲਤ ਲੱਗਣ, ਤਾਂ ਲੇਬਲ ਨਹੀਂ, UID ਦੀ ਤੁਲਨਾ ਕਰੋ। ਵਰਤੋਂ API UID ਨਾਲ ਪੁੱਛੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਜਿਸ ਅੰਕ ਨਾਲ ਤੁਲਨਾ ਕਰਨੀ ਹੈ ਉਹ adb shell dumpsys package <package> | grep userId= ਛਾਪਦਾ ਹੈ, ਇਸ ਲਈ ਇੱਕੋ UID ਵਾਲੀਆਂ ਦੋ ਐਂਟਰੀਆਂ ਕਾਊਂਟਰ ਦੀ ਨਜ਼ਰ ਵਿੱਚ ਇੱਕੋ ਪਛਾਣ ਹਨ।
ਸਮਾਂ ਵਿੰਡੋ ਤੁਹਾਡੇ ਨਿਯਮ ਤੋਂ ਪਹਿਲਾਂ ਦੀ ਹੋ ਸਕਦੀ ਹੈ
ਵਰਤੋਂ ਡੇਟਾ ਬਾਲਟੀਆਂ ਵਿੱਚ ਇਕੱਠਾ ਕਰਕੇ ਸਮੇਂ-ਸਮੇਂ ਪੁੱਛਿਆ ਜਾਂਦਾ ਹੈ, ਸਿੱਧਾ ਸਟ੍ਰੀਮ ਨਹੀਂ ਹੁੰਦਾ। ਰੋਜ਼ਾਨਾ ਕੁੱਲ ਵਿੱਚ ਬਲਾਕ ਚਾਲੂ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਦੇ ਮਿੰਟ, ਪਿਛਲੇ ਘੰਟੇ ਦਾ ਬੈਕਗਰਾਊਂਡ ਸਿੰਕ, ਜਾਂ ਪਹਿਲਾਂ ਹੀ ਰਾਹ ਵਿੱਚ ਰਿਹਾ ਟ੍ਰੈਫਿਕ ਸ਼ਾਮਲ ਹੋ ਸਕਦਾ ਹੈ। ਸੰਚਿਤ ਕੁੱਲ ਦੀ ਤੁਲਨਾ ਇੱਕ ਅਸਵੀਕਾਰ ਕੀਤੀ ਬੇਨਤੀ ਨਾਲ ਕਰਕੇ ਅੰਤਰ ਨੂੰ ਲੀਕ ਕਹਿਣਾ ਮਾਪ ਦੀ ਗਲਤੀ ਹੈ, ਫਾਇਰਵਾਲ ਦੀ ਖੋਜ ਨਹੀਂ।
ਛੋਟੀ ਵਿੰਡੋ ਅਤੇ ਨਵੀਂ ਸ਼ੁਰੂਆਤ ਵਰਤੋ। ਨਿਯਮ ਬਦਲਦੇ ਸਮੇਂ ਸਮਾਂ-ਛਾਪ ਨੋਟ ਕਰੋ, ਇੱਕ ਇਕੱਠਾ ਕਰਨ ਦਾ ਅੰਤਰਾਲ ਉਡੀਕੋ, ਫਿਰ ਸਿਰਫ਼ ਉਸ ਤੋਂ ਬਾਅਦ ਦਾ ਡੇਟਾ ਵੇਖੋ। ਜੇ ਨਿਯਮ ਤੋਂ ਬਾਅਦ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੀ ਵਿੰਡੋ ਵਿੱਚ ਕੁੱਲ ਵਧਦਾ ਰਹੇ, ਤਾਂ ਤੁਹਾਡੇ ਕੋਲ ਜਾਂਚਣ ਵਾਲਾ ਕੁਝ ਹੈ; ਜੇ ਵਧਣਾ ਰੁਕ ਜਾਵੇ, ਤਾਂ ਪਹਿਲਾਂ ਦਾ ਵਾਧਾ ਦਿਖਾਇਆ ਜਾ ਰਿਹਾ ਇਤਿਹਾਸ ਸੀ।
VPN ਸੇਵਾ ਉਹ ਨਾ ਹੋਵੇ ਜੋ ਤੁਸੀਂ ਸੰਰਚਿਤ ਕੀਤੀ
VPN ਫਾਇਰਵਾਲ ਸਿਰਫ਼ ਉਹੀ ਟ੍ਰੈਫਿਕ ਵੇਖਦਾ ਹੈ ਜੋ ਉਸਦੀ ਆਪਣੀ ਸੇਵਾ ਢੋਂਦੀ ਹੈ। ਜੇ ਕੋਈ ਹੋਰ VPN ਐਪ ਸ਼ੁਰੂ ਹੋ ਕੇ ਸਰਗਰਮ ਕਨੈਕਸ਼ਨ ਲੈ ਲਵੇ, ਤਾਂ ਤੁਹਾਡਾ ਫਿਲਟਰ ਹੁਣ ਰਾਹ ਵਿੱਚ ਨਹੀਂ, ਜਦੋਂ ਕਿ ਉਸਦਾ ਇੰਟਰਫੇਸ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਹਾਲੇ ਵੀ ਹੈ। ਪ੍ਰਤੀ-ਐਪ ਬਾਈਪਾਸ ਸੂਚੀਆਂ ਇਹੀ ਜਾਣ-ਬੁੱਝ ਕੇ ਕਰਦੀਆਂ ਹਨ, ਅਤੇ ਐਪ ਨੂੰ ਛੱਡਣ ਵਾਲਾ ਪ੍ਰੋਫਾਈਲ ਲੀਕ ਨਹੀਂ ਹੁੰਦਾ ਜਦੋਂ ਐਪ ਫਿਰ ਕੰਮ ਕਰਦੀ ਹੈ।
IPv4, IPv6 ਅਤੇ DNS ਵੀ ਵੱਖ ਹੋ ਸਕਦੇ ਹਨ। IPv4 ਸੰਭਾਲਣ ਵਾਲਾ ਫਿਲਟਰ IPv6 ਜਾਂ ਇੱਕ ਨਿੱਜੀ DNS ਰਿਜ਼ੋਲਵਰ ਬਾਹਰ ਛੱਡ ਸਕਦਾ ਹੈ, ਇਸ ਲਈ ਐਪ ਦੇ ਟ੍ਰੈਫਿਕ ਦਾ ਕੁਝ ਹਿੱਸਾ ਉਸ ਰਾਹ ਚਲਦਾ ਹੈ ਜੋ ਤੁਹਾਡੇ ਨਿਯਮਾਂ ਨੇ ਕਦੇ ਨਹੀਂ ਦੱਸਿਆ। ਕੁਝ ਵੀ ਮੁੜ ਲਿਖਣ ਤੋਂ ਪਹਿਲਾਂ ਜਾਂਚੋ ਕਿ ਹੁਣ ਕਿਹੜੀ ਐਪ VPN ਦੀ ਮਾਲਕ ਹੈ ਅਤੇ ਛੱਡਣ ਸੂਚੀ ਕੀ ਕਹਿੰਦੀ ਹੈ:
adb shell settings get secure always_on_vpn_app
adb shell dumpsys connectivity
adb shell dumpsys netstats detail
ਇੱਕ ਨਵੀਂ ਬੇਨਤੀ ਟੈਸਟ ਕਰੋ ਅਤੇ ਚਾਰ ਤੱਥ ਲਿਖੋ
ਕੋਈ ਬੇਨੁਕਸਾਨ ਬੇਨਤੀ ਚੁਣੋ, ਇੱਕ ਵਾਰ ਕਰੋ, ਅਤੇ ਚਾਰ ਤੱਥ ਲਿਖੋ: ਲਾਗੂ ਨਿਯਮ, ਐਪ ਦਾ UID, ਨੈੱਟਵਰਕ ਸਥਿਤੀ ਅਤੇ ਸਮਾਂ। ਫਿਰ ਜਾਂਚੋ ਕਿ ਤੁਹਾਡੇ ਫਿਲਟਰ ਨੇ ਪ੍ਰਵਾਹ ਦਰਜ ਕੀਤਾ ਜਾਂ ਨਹੀਂ, ਅਤੇ ਮੰਜ਼ਿਲ ਜਾਂ ਗੇਟਵੇ ਨੇ ਉਹੀ ਕਨੈਕਸ਼ਨ ਵੇਖਿਆ ਜਾਂ ਨਹੀਂ। ਦੋਵੇਂ ਪਾਸਿਆਂ ਤੇ ਪਛਾਣਿਆ ਇੱਕ ਪ੍ਰਵਾਹ ਸਬੂਤ ਹੈ; ਕੁੱਲ ਜੋੜ ਸਬੂਤ ਨਹੀਂ।
ਰੱਖਿਆ ਯੋਗ ਸਿੱਟਾ ਦੱਸਦਾ ਹੈ ਕਿ ਕੀ ਅਸਵੀਕਾਰ ਹੋਇਆ ਅਤੇ ਕਿਹੜੇ ਨਿਰੀਖਣ ਨੇ ਇਸਦੀ ਪੁਸ਼ਟੀ ਕੀਤੀ। «ਕਾਊਂਟਰ ਵਧਿਆ» ਖੋਜ ਨਹੀਂ ਹੈ, ਅਤੇ «ਸਾਰੇ ਵਰਤੋਂ ਕਾਊਂਟਰ ਨਕਲੀ ਹਨ» ਵੀ ਨਹੀਂ। OSI ਪਰਤ ਦਾ ਨਾਅਰਾ ਇਹ ਤੈਅ ਨਹੀਂ ਕਰਦਾ: ਇਮਾਨਦਾਰ ਜਵਾਬ ਇਹ ਹੈ ਕਿ ਕਾਊਂਟਰ ਅਤੇ ਬਲਾਕ ਦੋਵੇਂ ਸਹੀ ਹੋ ਸਕਦੇ ਹਨ ਜਦੋਂ ਕਿ ਉਹ ਵੱਖਰੀਆਂ ਚੀਜ਼ਾਂ ਦੱਸਦੇ ਹਨ। Android ਦਾ NetworkStatsManager ਹਵਾਲਾ ਦਰਜ ਕਰਦਾ ਹੈ ਕਿ ਉਹ ਬਾਲਟੀਆਂ ਕਿਵੇਂ ਪੁੱਛੀਆਂ ਅਤੇ ਆਰੋਪਿਤ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ।