You can install Qv2ray via several methods:
Follow the instructions on our Snapcraft page.
# To install the package:$ snap install qv2ray# snap install qv2ray --edge (dev branch)# To update the package:$ snap refresh qv2ray
Set up Flatpak environment according to the official documentation.
# To install the package:$ flatpak install com.github.Qv2ray# To update the package:$ flatpak update
Go to the official release page and download the Qv2ray.VERSION.linux-x64.AppImage version.
Go to the official GitHub Release page of v2fly/v2ray-core and check the recent stable builds. Choose according to your platform in the asset files.
For example, Windows 64-bit users may download
v2ray-windows-64.zip, Mac OS users may download
v2ray-macos-64.zip, and for most of the Linux users,
Extract the v2ray core files into a fixed position. As a default, it is suggested to extract the files into
$QV2RAY_CONFIG_PATH is the directory where Qv2ray store it’s data.
vcore could be in one of these locations:
config subdirectory aside Qv2ray executable, which is recommended for Windows Users)
~/.qv2ray/ (in a dedicated directory of your home folder)
~/.config/qv2ray/ (standard XDG configuration path)
Afterwards, please make sure that these files exists directly in your
v2ray: core executable file
v2ctl: core controlling program
geoip.dat: IP rules database
geosite.dat: domain rules database
Open Qv2ray and go to Preference Window. In Core Settings, configure the following options:
Core Executable Path: Set this to where your V2Ray executable exists. This can be the full path of your
v2ray.exe on Windows, or that
v2ray executable file on Linux / macOS.
V2Ray Assets Directory: Set this to where
geosite.dat are located.
After configuring, you can click on Check V2Ray Core Settings button to validate your V2Ray core settings. Repeat trying until you get the check passed.
Go to your client area dashboard
Click on the "Windows V2rayN" button in the API box to copy the API for Qv2ray (it's the same format; we will be adding a specific api for Qv2ray soon).
To import an API, follow these steps:
Click Subscriptions button in the main window.
In the SubscribeEditor dialog, click the Add subscription icon button at the left-bottom corner.
Click to select the newly generated item in Subscription List.
Input your subscription information on the right side.
Subscription Name: Fill this as you wish.
Subscription Address: Use your API link mentioned above.
Update Interval: Change this according to your own demands.
Click Update Subscription Data button to update the server list and wait until the process finishes.
Click OK to apply the settings and close the dialog.
Congratulations! There's only one step left in order to access the unlocked Internet!
For Windows and macOS users, almost all of the applications will follow the system proxy settings. For Linux users, some applications such as Firefox and Chromium, but not all, will read and obey the proxy configurations in GNOME/KDE Settings.
Currently, automatic setting of system proxy is supported by Qv2ray, including Windows, macOS and Linux (GNOME/KDE). You may find System Proxy options of Qv2ray in the following positions:
Qv2ray Tray Menu.
Right click on the tray icon.
In the popup menu, choose System Proxy -> Enable/Disable System Proxy.
Qv2ray Preference Window.
Click Preferences button in the main window.
In Preference Window, choose the tab Inbound Settings.
Check the option Set System Proxy.
Click OK to apply the settings.
You can configure Telegram to use proxies in the app. Go to Settings -> Advanced -> Network and proxy and click Connection type, where Proxy Settings dialog will be opened.
In Proxy Settings, click Add Proxy button on the bottom. Choose SOCKS5/HTTP according to your own flavor and fill in the blanks with the information from Qv2ray Inbound Settings.
Finally, click on the proxy entry that you've just configured. You are done.
Almost all web browsers support manual configuration of proxies. Taking Firefox as example, you can find this settings in Preferences -> General -> Network -> Manual Proxy Configuration. Fill these fields with the information from Qv2ray Inbound Settings to use Qv2ray.
Using Proxy Plugins
To avoid switching back and forth among proxy configurations, you may want to use a third-party plugin (eg: SwitchyOmega) to enhance your browser. These plugins can help to implement a more sophisticated configuration, including multiple profiles and further traffic diversion.
For Java applications, you may use configure proxies through JVM arguments.
Here are some examples:
java -DsocksProxyHost=127.0.0.1 -DsocksProxyPort=1088 -jar some-application.jar
java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8000 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8000 -jar some-application.jar
Newer versions of Minecraft (
>=1.5.2) won't follow JVM proxy settings. That is not Qv2ray's problem. If you really want to play Minecraft through proxy, consider setting up a Dokodemo-door inbound for that server and connect directly to
Many CLI programs (for example
wget) will use the proxies given by
<PROTOCOL>_PROXY environment variable.
Here is a configuration example:
# Change the host and port according to Qv2ray inbound configurationexport HTTP_PROXY="http://127.0.0.1:8000"export HTTPS_PROXY="http://127.0.0.1:8000"
If authentication is enabled in Qv2ray, use the following settings:
# Change user/pass according to your configurationexport HTTP_PROXY="http://user:[email protected]:8000"export HTTPS_PROXY="http://user:[email protected]:8000"
Note that if there is a special character in your username or password, you need to encode it. Here's a quick reference:
Or enter the text you want to encode:
For programs running in
sudo, it is required to configure
sudo to preserve these variables if you do not run
sudo in a shell. Call
visudo with root and add the following line:
Defaults env_keep += "HTTP_PROXY HTTPS_PROXY"
Still, there are some programs who are using their own variables. For example,
RSYNC_PROXY for HTTP proxies:
export RSYNC_PROXY=user:[email protected]:8000
It is strongly recommended to read the manual of programs that you want to configure proxy with.
If none of the above methods works, you can try using
proxychains, which hijacks program's function/library to redirect network connections into your proxies.
First, you should install
proxychains-ng. Installation methods varies with each operating system.
/etc/proxychains.conf (for global proxychains) or
$HOME/.proxychains/proxychains.conf (for user), edit
[ProxyList] section and change the proxy to SOCKS5 Proxy in Qv2ray:
[ProxyList]socks5 127.0.0.1 1088
proxychains, you may use
proxychains <program> in terminal to make
proxychains hijack the program to use the given proxy. If you are fed up with the noisy output, you may append
-q option after
One thing to note is that
proxychains does not work with statically-linked programs, for example, Golang programs.