shadowsocks-windows README

The project's README from github.com/shadowsocks/shadowsocks-windows. As one markdown file: README.md.

[logo] Shadowsocks for Windows

Build Status

中文说明

Features

  1. System proxy configuration
  2. PAC mode and global mode
  3. GeoSite and user rules
  4. Supports HTTP proxy
  5. Supports server auto switching
  6. Supports UDP relay (see Usage)
  7. Supports plugins

Downloads

Download the latest release from release page.

Requirements

.NET Framework 4.8 or higher, Microsoft Visual C++ 2015 Redistributable (x86) .

Basics

  1. Find Shadowsocks icon in the notification tray
  2. You can add multiple servers in servers menu
  3. Select Enable System Proxy menu to enable system proxy. Please disable other proxy addons in your browser, or set them to use system proxy
  4. 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

PAC

User-defined rules

For Windows10 Store and related applications, please execute the following command under Admin privilege:

netsh winhttp import proxy source=ie

Server Auto Switching

  1. Load balance: choosing server randomly
  2. High availability: choosing the best server (low latency and packet loss)
  3. Choose By Total Package Loss: ping and choose. Please also enable Availability Statistics in the menu if you want to use this
  4. Write your own strategy by implement IStrategy interface and send us a pull request!

UDP

For UDP, you need to use SocksCap or ProxyCap to force programs you want to be proxied to tunnel over Shadowsocks

Multiple Instances

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.

Plugins

If you would like to connect to server via a plugin, please set the plugin's path (relative or absolute) on Edit Servers form. Note: Forward Proxy will not be used while a plugin is enabled.

Details: Working with non SIP003 standard Plugin.

Global hotkeys

Hotkeys could be registered automatically on startup. If you are using multiple instances of Shadowsocks, you must set different key combination for each instance.

How to input?

  1. Put focus in the corresponding textbox.
  2. Press the key combination that you want to use.
  3. Release all keys when you think it is ready.
  4. Your input appears in the textbox.

How to change?

  1. Put focus in the corresponding textbox.
  2. Press BackSpace key to clear content.
  3. Re-input new key combination.

How to deactivate?

  1. Clear content in the textbox that you want to deactivate, if you want to deactivate all, please clear all textboxes.
  2. Press OK button to confirm.

Meaning of label color

Server Configuration

Please visit Servers for more information.

Experimental

Experimental Features

Development

  1. Visual Studio 2019 & .NET Framework 4.8 SDK are required.
  2. It is recommended to share your idea on the Issue Board before you start to work, especially for feature development.

License

GPLv3

Open Source Components / Libraries

Caseless.Fody (MIT)              https://github.com/Fody/Caseless
Costura.Fody (MIT)               https://github.com/Fody/Costura
Fody (MIT)                       https://github.com/Fody/Fody
GlobalHotKey (GPLv3)             https://github.com/kirmir/GlobalHotKey
MdXaml (MIT)                     https://github.com/whistyun/MdXaml
Newtonsoft.Json (MIT)            https://www.newtonsoft.com/json
ReactiveUI.WPF (MIT)             https://github.com/reactiveui/ReactiveUI
ReactiveUI.Events.WPF (MIT)      https://github.com/reactiveui/ReactiveUI
ReactiveUI.Fody (MIT)            https://github.com/reactiveui/ReactiveUI
ReactiveUI.Validation (MIT)      https://github.com/reactiveui/ReactiveUI.Validation
WPFLocalizationExtension (MS-PL) https://github.com/XAMLMarkupExtensions/WPFLocalizationExtension/
ZXing.Net (Apache 2.0)           https://github.com/micjahn/ZXing.Net

libsscrypto (GPLv2)    https://github.com/shadowsocks/libsscrypto
Privoxy (GPLv2)        https://www.privoxy.org
Sysproxy ()            https://github.com/Noisyfox/sysproxy

shadowsocks-windows (shadowsocks/shadowsocks-windows)

Searching Database…

这是什么?Shadowsocks-windows 是 Shadowsocks 的 Windows 桌面客户端。Shadowsocks 是一种 SOCKS5/HTTP 代理协议,用于绕过网络审查,使用 C# 编写。
这是浏览器扩展还是独立应用?它是一个独立的 Windows 桌面应用,常驻系统托盘,可以设置全系统或浏览器的代理。
我该怎么让它运行起来?下载最新版本并安装,然后在“服务器”菜单中添加服务器信息并开启“系统代理”;也可以手动将浏览器的 SOCKS5/HTTP 代理指向 127.0.0.1:1080。
运行之前需要先安装什么?需要 .NET Framework 4.8 或更高版本,以及 Microsoft Visual C++ 2015 Redistributable(x86)。
UDP 流量会自动走代理吗?不会。要让 UDP 流量通过 Shadowsocks 转发,需要借助 SocksCap 或 ProxyCap 之类的额外工具,强制指定程序走隧道。
它能在 Windows 以外的系统上运行吗?不能。这是专为 Windows 编写的 C# 版本,它依赖仅限 Windows 的 .NET Framework 和 Visual C++ 运行库。
我的流量是只在本机处理,还是会经过第三方服务器?你需要自备并连接自己的 Shadowsocks 服务器;本应用只是在你的电脑上管理本地代理和路由规则。
PAC 模式是什么?它如何决定哪些流量走代理?PAC 模式使用根据 v2fly GeoSite 域名列表生成的代理自动配置脚本,可以工作在白名单模式(仅非中国域名走代理)或黑名单模式(仅非中国域名直接连接),可通过 gui-config.json 中的 geositePreferDirect 进行配置。
能同时运行多个服务器吗?可以,你可以把应用复制到不同的目录中分别运行多个实例,并为每个实例设置不同的本地端口,以避免配置冲突。
客户端是否支持用于混淆传输的插件?支持。你可以在“编辑服务器”表单中设置插件路径,以通过 SIP003 风格的插件连接,不过插件启用时会禁用转发代理。
能自动选择最佳服务器吗?可以,它支持服务器自动切换,策略包括负载均衡(随机)、高可用(延迟或丢包率最低),或按总丢包率选择;你还可以通过 IStrategy 接口编写自定义策略。
Size
13.2 MB
Stars
59.5K
Age
13y
Commits · 90 Days