[GH-ISSUE #2521] Hiding the External IP in the Android сlient #1137

Open
opened 2026-10-13 20:35:03 +00:00 by bsakaguchi · 1 comment
Owner

Originally created by @oisaev on GitHub (Apr 23, 2026).
Original GitHub issue: https://github.com/amnezia-vpn/amnezia-client/issues/2521

As has been widely reported in the press, Ministry of Digital Development, Communications and Mass Media of the Russian Federation distributed a guideline according to which Russian services now detect the presence of VPNs on Android devices. In this Habr article: https://habr.com/ru/articles/1022422/ , the author described an algorithm for hiding the external IP when implemented in a VPN client and created a proof of concept client (with source code link). Please consider the possibility of implementing something similar in the Amnezia VPN client. In the current version, the RKNHardering application ( https://github.com/xtclovver/RKNHardering ), built using that same guideline, reveals the VPN’s external IP even when split tunneling is enabled, which is definitely not good.

Originally created by @oisaev on GitHub (Apr 23, 2026). Original GitHub issue: https://github.com/amnezia-vpn/amnezia-client/issues/2521 As has been widely reported in the press, Ministry of Digital Development, Communications and Mass Media of the Russian Federation distributed a guideline according to which Russian services now detect the presence of VPNs on Android devices. In this Habr article: https://habr.com/ru/articles/1022422/ , the author described an algorithm for hiding the external IP when implemented in a VPN client and created a proof of concept client (with source code link). Please consider the possibility of implementing something similar in the Amnezia VPN client. In the current version, the RKNHardering application ( https://github.com/xtclovver/RKNHardering ), built using that same guideline, reveals the VPN’s external IP even when split tunneling is enabled, which is definitely not good.
Author
Owner

@pabelyakov commented on GitHub (May 2, 2026):

+1

Now a forced curl on the tun interface shows the IP address of the VPN server.
A solution was developed in issue NekoBox: everything that does not fall under the rules of split tunneling routing should be sent to block or direct.

maybe it will be useful https://github.com/MatsuriDayo/NekoBoxForAndroid/issues/1153

<!-- gh-comment-id:4363717728 --> @pabelyakov commented on GitHub (May 2, 2026): +1 Now a forced curl on the tun interface shows the IP address of the VPN server. A solution was developed in issue NekoBox: everything that does not fall under the rules of split tunneling routing should be sent to block or direct. maybe it will be useful https://github.com/MatsuriDayo/NekoBoxForAndroid/issues/1153
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
amnezia-vpn/amnezia-client#1137
No description provided.