Skip to content

Working with non SIP003 standard Plugin

Allen Zhu edited this page Apr 13, 2019 · 4 revisions

Important

This manual only applicable on the non-SIP003 standard plugin, if your using plugin is in compliance with the SIP003 standard, read plugin manual or README file to config.

Supported Versions

4.1.2 and above

Environment Variables

In Shadowsocks for Windows, you can use 3rd party plugins which does not following the SIP003 standard.

Shadowsocks for Windows provided 5 environment variables for SIP003 plugin config:

  • %SS_LOCAL_HOST% Mandatory. Generated by Shadowsocks.

  • %SS_LOCAL_PORT% Mandatory. Generated by Shadowsocks.

  • %SS_REMOTE_HOST% Mandatory. Generated by Shadowsocks.

  • %SS_REMOTE_PORT% Mandatory. Generated by Shadowsocks.

  • %SS_PLUGIN_OPTIONS% Optional. User defined.

These environment variables will inform plugin how to config both local (your machine) and remote (server) endpoints.

QuickStart

  1. Prepare a plugin program under Shadowsocks.exe directory or somewhere else, such as:

D:\Shadowsocks\plugin_windows_amd64.exe

Read plugin manual, find out how to use CLI parameters to launch plugin with specific configuration.

  1. In Shadowsocks Windows "Edit Servers" window, add/select a server.

  2. In Server Port field, write the server-side plugin service listening port, not the Shadowsocks service port.

  3. In Plugin Program field, write the plugin executable file path (absolute or relative), for instance:

D:\Shadowsocks\plugin_windows_amd64.exe or plugin_windows_amd64.exe

  1. In Plugin Options field, we could keep it blank.

  2. In Plugin Arguments field, in this case, the plugin is kcptun. It uses -l parameter to assign local:port, -r parameter to assign server:port. We could compose the command as following:

-l %SS_LOCAL_HOST%:%SS_LOCAL_PORT% -r %SS_REMOTE_HOST%:%SS_REMOTE_PORT% --key <Plugin Password> --crypt <Encryption algorithm> --mode <Selected mode>

  1. Done.

Troubleshooting

  1. Confirm the plugin program executable file exists and the path is correct.

  2. Determine whether the plugin program is executed or not by using Task Manager.

  3. Check the plugin parameters. Is there any mistakes such as typo or missing parameters or mismatch with server configuration.