eventure / hide.client.linux

Hide.me CLI VPN client for Linux
https://hide.me
GNU General Public License v2.0
90 stars 35 forks source link

Error when connecting on Docker - /etc/resolv.conf issue #4

Open reback00 opened 3 years ago

reback00 commented 3 years ago

Originally posted on #1 by @alturismo

thanks you very much, quick test failed here now due

Link: [ERR] Rename of /etc/resolv.conf to /etc/resolv.conf.backup.hide.me failed, device or resource busy


./hide.client.linux -4 -u username -P password-s 192.168.1.0/24 connect de.hideservers.net & ~/.xteve/_hideme # Link: Generated a new wireguard private key Link: Wireguard interface vpn activated Link: Wireguard device vpn configured Link: Split tunnel rule for 192.168.1.0/24 added Link: IPv4 DHCP VPN bypass RPDB rule added Link: IPv4 RPDB rule for non mark 55555 marked traffic added Link: Loopback route 0.0.0.0/0 dev lo mtu 0 table 55555 added Name: Resolved de.hideservers.net to 91.199.118.74 Main: Connecting to 91.199.118.74:432 Pins: Hide.Me Server CA #1 pin OK Pins: Hide.Me Root CA pin OK Main: Connected to 91.199.118.74:432 Rest: Remote UDP endpoint is 91.199.118.74:432 Rest: Keepalive is 20 seconds Rest: Assigned IPs are 10.129.205.140, fd00:6968:6564:e6:c11e:e727:7c05:a5cc Rest: Gateway IPs are 10.129.204.1, fd00:6968:6564:e6::1 Rest: DNS servers are 10.129.204.1, fd00:6968:6564:e6::1 Link: Interface vpn MTU set to 1392 Link: Peer 91.199.118.74:432 added Link: Address 10.129.205.140 added to interface vpn Link: Gateway route 10.129.204.1/32 dev vpn mtu 1392 table 55555 added Link: Route 0.0.0.0/1 via 10.129.204.1 dev vpn mtu 1392 table 55555 added Link: Route 128.0.0.0/1 via 10.129.204.1 dev vpn mtu 1392 table 55555 added Link: [ERR] Rename of /etc/resolv.conf to /etc/resolv.conf.backup.hide.me failed, device or resource busy Link: Received 0 bytes, transmitted 148 bytes Link: Route 0.0.0.0/1 via 10.129.204.1 dev vpn mtu 1392 table 55555 removed Link: Route 128.0.0.0/1 via 10.129.204.1 dev vpn mtu 1392 table 55555 removed Link: Gateway route 10.129.204.1/32 dev vpn mtu 1392 table 55555 removed Link: 10.129.205.140 removed from interface vpn Link: Peer 91.199.118.74:432 removed Link: Down Main: [ERR] Link up failed, rename /etc/resolv.conf /etc/resolv.conf.backup.hide.me: device or resource busy Main: [ERR] Connection setup/teardown failed, traffic blocked, waiting for a termination signal

after quick look, looks like its due mv resolv.conf ... which is inside the docker enviroment ...

may a way to disable and write manually the dns entries ?

Originally posted by @alturismo in https://github.com/eventure/hide.client.linux/issues/1#issuecomment-721907636

kevinmrl commented 3 years ago

@reback00 Hi,

We can confirm the same issue regarding the

Link: [ERR] Rename of /etc/resolv.conf to /etc/resolv.conf.backup.hide.me failed, device or resource busy

We tried a workaround, to use a flag -b /etc/resolv.conf

And kind of passed

Link: /etc/resolv.conf moved to /etc/resolv.conf
Link: /etc/resolv.conf created

But..eventually, a terminal freezes up :( even though it seems that connection kind of successful by itself

image

reback00 commented 3 years ago

@alturismo Can you test the above to see if it works for you? Also, does the freeze happen?

alturismo commented 3 years ago

@reback00 thanks for the reminder, i take a look at the weekend, now i know what i forgot to test here ;)

alturismo commented 3 years ago

sorry for the late reply, and yes, looking ok, just cant startup in the background

using a new session i see

curl ifconfig.me

91.199.118.73/ #

which should be the hideme vpn ;)

thanks alot

OevreFlataeker commented 2 years ago

I am experiencing the same problem within a docker container and -b does not work for me.

root@4bc0ffa174ca:/# /hide.me -4 -s 192.168.0.0/16,172.17.0.0/8 -b /etc/resolv.conf connect streaming-uk
Link: Generated a new wireguard private key
Link: Wireguard interface vpn activated
Link: Wireguard device vpn configured
Link: Split tunnel rule for 192.168.0.0/16 added
Link: Split tunnel rule for 172.0.0.0/8 added
Link: IPv4 DHCP VPN bypass RPDB rule added
Link: IPv4 RPDB rule for non mark 55555 marked traffic added
Link: Loopback route 0.0.0.0/0 dev lo mtu 0 table 55555 added
Resolve: [ERR] streaming-uk.hideservers.net lookup failed, i/o timeout
Main: [ERR] DNS failed, i/o timeout
Main: [ERR] Connection setup/teardown failed, traffic blocked, waiting for a termination signal

Problem persists with or without "-s" arguments. The call to "hide.me -u ... -P ... token streaming-uk" works as expected and an access token file is generated. Also tried to replace the contents of /etc/resolv.conf with "nameserver 8.8.8.8" and/or my local DNS but didn't work either.

Original contents of /etc/resolv.conf:

search homedomain
nameserver 127.0.0.11
options ndots:0
tcohar commented 2 years ago

The latest version ( 0.9.2 ) should fix this issue

NikMAX2077 commented 1 year ago

same problem in 2023 on v.0.9.2

tcohar commented 1 year ago

What's the issue for you, the DNS lookup or terminal freezing ? Terminal freezing might happen if you ssh into a docker container and run hide.me. Our routing setup and the activation of the kill-switch will interrupt your ssh session. A workaround would be to use the -s option.

DNS lookup issues could be solved with -d option. By default, hide.me uses our own DNS servers when looking up hide.me server DNS names. Hide.me CLI does not care about resolv.conf during this stage of the connection setup. You can use -d to set your preferred DNS servers for that part of the connection setup, e.g.:

hide.me -d 9.9.9.9:53 connect nl

After the connection gets established we need to install in-tunnel DNS servers. In order to do that we have to replace resolv.conf. -b option is just about a backup path for the original resolv.conf. Once the connection ends we have to restore resolv.conf to its original state from the backup.

iiaan commented 9 months ago

But..eventually, a terminal freezes up :( even though it seems that connection kind of successful by itself

imagen

I get the same thing, DPD Starting but nothing is working. It was working for me 6 months ago and now it has stopped working for no reason.