amnezia-vpn / amnezia-client

Amnezia VPN Client (Desktop+Mobile)
https://amnezia.org
GNU General Public License v3.0
5.29k stars 328 forks source link

client app does not support IPv6 to install server #1037

Open ramdroid2015 opened 1 month ago

ramdroid2015 commented 1 month ago

Client app does not support IPv6 to install server. The "Server IP address" field only gets IP v4.

cowsay commented 5 days ago

The problem of not supporting IPv6 (except that IPv6 resources are not reachable), the connection does not drop immediately, instead, it must wait for an application timeout:

c:\>curl -6 https://one.one.one.one
curl: (28) Failed to connect to one.one.one.one port 443 after 42070 ms: Could not connect to server

c:\>curl https://[2606:4700:4700::1111]
curl: (28) Failed to connect to 2606:4700:4700::1111 port 443 after 21035 ms: Could not connect to server

The same behavior in browsers.

Maybe is there any way to edit config file so we can add IPv6 manually? I couldn't find it anywhere in app or Windows AppData. For example, I have config from some commercial VPN that provides config for amnezia-wg it looks like that:

[Interface]
Address = i.p.v.4, i:p:v:6
PrivateKey = 
DNS = 
Jc = 5
Jmin = 51
Jmax = 843
S1 = 0
S2 = 0
H1 = 1
H2 = 2
H3 = 3
H4 = 4

[Peer]
PublicKey =
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint =

Looks like usual wg except special vars, and it contains IPv6 internal address and AllowedIPs has IPv6 range. And it works.

marek22k commented 5 days ago

As a workaround for the unreachable problem, you could create an unreachable route for ::/0 - this would tell the operating system that IPv6 is not available. It would therefore try IPv4 straight away.

[Interface]
...
PostUp = ip -6 route add unreachable ::/0

However, if you don't use the workaround, I could think of another program: If one accesses a blocked resource like Discord and IPv6 is used and a block page is displayed, IPv4 is never tried and thus never use Amnezia. Discord would still be blocked. I don't know how realistic the problem is though.

cowsay commented 4 days ago

But how can I change the client config of the server that is installed by the AmneziaVPN app?