- System proxy configuration
- PAC mode and global mode
- GFWList and user rules
- Supports HTTP proxy
- Supports server auto switching
- Supports UDP relay (see Usage)
Download the latest release.
- Find Shadowsocks icon in the notification tray
- You can add multiple servers in servers menu
- Select
Enable System Proxy
menu to enable system proxy. Please disable other proxy addons in your browser, or set them to use system proxy - You can also configure your browser proxy manually if you don't want to enable
system proxy. Set Socks5 or HTTP proxy to 127.0.0.1:1080. You can change this
port in
Servers -> Edit Servers
- You can change PAC rules by editing the PAC file. When you save the PAC file with any editor, Shadowsocks will notify browsers about the change automatically
- You can also update PAC file from GFWList (maintained by 3rd party)
- You can also use online PAC URL
- Load balance: choosing server randomly
- High availability: choosing the best server (low latency and packet loss)
- Choose By Total Package Loss: ping and choose. Please also enable
Availability Statistics
in the menu if you want to use this - Write your own strategy by implement IStrategy interface and send us a pull request!
For UDP, you need to use SocksCap or ProxyCap to force programs you want to be proxied to tunnel over Shadowsocks
If you want to manage multiple servers using other tools like SwitchyOmega, you can start multiple Shadowsocks instances. To avoid configuration conflicts, copy Shadowsocks to a new directory and choose a different local port.
Also, make sure to use SOCKS5
proxy in SwitchyOmega, since we have only
one HTTP proxy instance.
Please visit Servers for more information.
If you want to put all temporary files into shadowsocks/temp folder instead of
system temp folder, create a shadowsocks_portable_mode.txt
into shadowsocks folder.
Visual Studio 2015 is required.
GPLv3