outline-apps
outline-apps copied to clipboard
Unable to connect to server from a Linux client (other clients work)
Describe the bug I cannot connect to a server from Ubuntu Linux, and the server is working fine for other devices, including Android/iOS/MacOS.
To Reproduce Steps to reproduce the behavior:
- Follow an invitation link.
- Copy the code and download the Outline AppImage.
- Mark the file executable.
- Double click the icon from Nautilus to run it.
- Confirm adding the server (link detected).
- Click Connect on the one and only newly added server.
- After 1 second, the connecting rotation animation stops, and an error appears from the bottom:
"We can't seem to connect to your server. Please check that you are connected to the Internet and try again."
Expected behavior That I should be able to connect.
Screenshots I think they aren't particularly helpful here, but LMK if they would be.
Desktop (please complete the following information):
- OS: [e.g. iOS] Ubuntu 16.04
- Browser [e.g. chrome, safari] Chrome
- Version [e.g. 22] 75.0.3370.100
Additional context
sudo ufw status says it's disabled.
I have no idea whether or where there are application logs detailing the error, or any specific logs I should be looking at. I am not a Linux expert, just a normal user.
I saw the following appear in /var/log/syslog in case it's helpful:
gnome-session[29225]: connecting to 83XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX87...
gnome-session[29225]: a helper has exited, disconnecting
gnome-session[29225]: all helpers have exited
gnome-session[29225]: disconnected from 83XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX87
gnome-session[29225]: could not connect: ServerUnreachable ()
gnome-session[29225]: Promise "DNS lookup" resolved before 10000 ms.
+1 same problem
+1 same problem
+1 same problem
I have the same problem, someone solved it ?
"We can't seem to connect to your server. Please check that you are connected to the internet and try again."
hmmm. Quick sanity check, can you ping and traceroute to the servers?
hmmm. Quick sanity check, can you
pingandtracerouteto the servers?
I have the same issue. I can ping to the server and also can connect via ssh as well.
I believe it is not the server or connection issue. Because I run tcpdump to monitor the traffic, the connection actually established. And there is also a connection from the server to my client side after that.
I think this has something to do with a faulty config. The logs appear to be coming from isServerReachable() in src/electron/connectivity.ts. The DNS lookup resolved -- maybe it's possible that you're using a hostname instead of an IP address and the lookup returned an incorrect IP? You can check the configs by opening up the developer console and typing 'window.localStorage["servers"]`
My Server address is an IP, not a hostname.
I am not a Node.js expert, but I seem to found a bug in isServerReachable() in src/electron/connectivity.ts.
Tell me if I am wrong.
I checked on Node.js documentation, the function: net.socket.connect has two way to implement:
connect({ port: <port>, host: '<hostname or IP>'})connect(<port>, '<hostname or IP>' )
However, the way it calls connect on isServerReachable() is:
connect({'<hostname or IP>', <port>})
Is there any solution to this yet! On ubuntu its unusable.
Any updates for this? My Ubuntu cannot connect to VPN with the same error. Hope to have a quick fix for this!
Still no solution so far? I'm using Ubuntu 16.04 and I have no other option except using Outline as my VPN.
Interesting that all of you are coming from Ubuntu. We normally develop on Google's internal fork of Debian, so I wonder if this isn't an Ubuntu-specific problem.
@my6jay30's idea I think is incorrect, as we use the "options" version of conect. From the documentation they linked to: Alias to socket.connect(options[, connectListener]) called with {port: port, host: host} as options., which is what we're doing
Same issue on centos 7. I can not ping to the outline server. but on windows10, i can successful connect to same outline server although cant ping to server too.
When https://github.com/Jigsaw-Code/outline-client/pull/958 lands, you will be able to get logs from the network stack by setting the OUTLINE_DEBUG env variable to "true". Any interesting logs from reproductions of this issue would be greatly appreciated!
Warning -- the logs can get big if you run Outline for a long time -- we've seen hundreds of MB sometimes
Ubuntu 20 LTS. Same error. export OUTLINE_DEBUG=true -same export OUTLINE_DEBUG="true" - same export OUTLINE_DEBUG=1 - same SO I assume is true as a string... export OUTLINE_DEBUG="true" && ./Outline-Client.AppImage loading web app from file:///tmp/.mount_OutlinecrtK7/resources/app.asar/www/electron_index.html?debug=true&appName=Outline (node:36367) electron: The default of contextIsolation is deprecated and will be changing from false to true in a future release of Electron. See https://github.com/electron/electron/issues/23506 for more information Could not load active tunnel: [Error: ENOENT: no such file or directory, open '/home/marius/.config/Outline/connection_store'] { errno: -2, code: 'ENOENT', syscall: 'open', path: '/home/marius/.config/Outline/connection_store' } (electron) Sending uncompressed crash reports is deprecated and will be removed in a future version of Electron. Set { compress: true } to opt-in to the new behavior. Crash reports will be uploaded gzipped, which most crash reporting servers support. Outline is starting connecting to 2651739b-73c1-4210-8207-6e05f8384892... 2021-06-18 21:05:25 INFO: initializing ciphers... chacha20-ietf-poly1305 2021-06-18 21:05:25 INFO: listening at 127.0.0.1:1081 2021-06-18 21:05:25 INFO: udprelay enabled (node:36367) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead. 2021-06-18 21:05:25 INFO: connection from 127.0.0.1:56536 2021-06-18 21:05:25 INFO: connect to example.com:80 2021-06-18 21:05:25 INFO: remote: 54.197.213.184:26102 2021-06-18 21:05:26 INFO: connection from 127.0.0.1:56540 2021-06-18 21:05:26 INFO: udp assc request accepted 2021-06-18 21:05:27 INFO: [udp] server receive a packet 2021-06-18 21:05:27 INFO: [1081] [udp] cache miss: 1.1.1.1:53 <-> 127.0.0.1:59967 2021-06-18 21:05:27 INFO: [udp] remote receive a packet UDP support: true (re-)installing routing daemon copying service files to /tmp/epiKW4 could not connect: h (routing daemon is not running) Promise "DNS lookup" resolved before 10000 ms.
UBUNTU 18.04 Same issue as described in prev comment, can't connect to the server, Client App show error and said "Can't connect to the server, seems application is not installed correctly." But same connection to same server works ok on the Android device.
Here is the console output:
loading web app from file:///tmp/.mount_OutlinJhrz38/resources/app.asar/www/electron_index.html?appName=Outline
(node:17641) electron: The default of contextIsolation is deprecated and will be changing from false to true in a future release of Electron. See https://github.com/electron/electron/issues/23506 for more information
Could not load active tunnel: [Error: ENOENT: no such file or directory, open '/home/vsevolod/.config/Outline/connection_store'] {
errno: -2,
code: 'ENOENT',
syscall: 'open',
path: '/home/vsevolod/.config/Outline/connection_store'
}
Checking for update
(electron) Sending uncompressed crash reports is deprecated and will be removed in a future version of Electron. Set { compress: true } to opt-in to the new behavior. Crash reports will be uploaded gzipped, which most crash reporting servers support.
Outline is starting
Update for version 1.4.0 is not available (latest version: 1.4.0, downgrade is disallowed).
connecting to 11fa4e06-fac3-46b4-a96e-221bfde85769...
(node:17641) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
UDP support: true
(re-)installing routing daemon
copying service files to /tmp/p3uFKJ
[EXIT - badvpn-tun2socks]: Exited with code 1
a helper has exited, disconnecting
could not stop routing: Cannot call write after a stream was destroyed
[EXIT - ss-local]: Exited with code 0
Promise "DNS lookup" resolved before 10000 ms.
could not connect: h (routing daemon is not running)
Still issue not resolved.
Same error, Ubuntu 16.04 LTS, Outline Try to change port for new Key to the same as for other devices in the same WIFI network with no success. All other devices (Android iOS and Mac OS) working OK with this Outline server.
$ telnet xx.xxx.xxx.xxx 45780 Trying xx.xxx.xxx.xxx... Connected to xx.xxx.xxx.xxx. Escape character is '^]'.
But no connection for the same IP and port from Outline Beta 1.4.0
Fedora 34 and 35, same error
Debian 9 aka Astra Linux Common Edition "Orel", same error ((( The version of outline-client is 1.7.0 Debian 11 same error, the version of outline-client is 1.7.0
Debian 11, Linux client version 1.7.0 connects everything perfectly, thanks a lot to the developers
Facing the same error running the Manjaro OS
Same issue, Linux Mint 21 Vanessa. Sometimes it works, sometimes doesn't. At times it does not work at the first attempt to connect, but does on the second.
Attempted on NixOS 22.11 as well. Does not work.
I have the same problem, ubuntu 22.04