Skip to content

命令行选项

建议按这个顺序阅读和配置:

  1. 先选模式。
  2. 先填关键参数。
  3. 只在需要时再加其他参数。

模式速览

模式命令用途
正向代理linksocks server + linksocks clientSOCKS5 监听在客户端
反向代理linksocks server -r + linksocks client -rSOCKS5 监听在服务端
代理模式linksocks server -r -c ... + linksocks provider + linksocks connector分离 provider 和 connector 权限
自主模式linksocks server -r -a + linksocks provider -c ... + linksocks connectorprovider 自行管理 connector token
直连传输客户端加 --direct-*,服务端加 --direct-enable在可用时优先尝试点对点传输

服务端命令

server 用于启动 WebSocket 中继服务。加上 -r 后,SOCKS5 会暴露在服务端。

关键参数

参数简写默认值说明
--token-t未提供时自动生成(由服务端管理的模式)主认证令牌,也支持 LINKSOCKS_TOKEN
--ws-host-H0.0.0.0WebSocket 监听地址
--ws-port-P8765WebSocket 监听端口
--reverse-rfalse从正向中继切换到反向/代理模式
--socks-host-s127.0.0.1反向模式下的 SOCKS5 监听地址
--socks-port-p9870反向模式下的 SOCKS5 监听端口

其他参数

参数简写默认值说明
--connector-token-c未提供时自动生成代理模式使用的 connector token,也支持 LINKSOCKS_CONNECTOR_TOKEN
--connector-autonomy-afalse允许 provider 自己管理 connector token
--socks-username-n反向模式下的 SOCKS5 用户名
--socks-password-w反向模式下的 SOCKS5 密码,也支持 LINKSOCKS_SOCKS_PASSWORD
--socks-nowait-ifalse不等 provider 就立即启动 SOCKS5

| --api-key | -k | | 启用 HTTP API | | --buffer-size | -b | 1048576 | 数据传输缓冲区大小 | | --upstream-proxy | -x | | 服务端出站连接使用的上游代理 | | --fast-open | -f | false | 在远端完全确认前就允许开始传输数据 | | --connector-wait-provider | | 5s | connector 等待 provider 重连的时间 | | --direct-enable | | false | 为兼容客户端开启直连协商 | | --direct-rendezvous-udp | | false | 开启服务端 UDP rendezvous。要求服务端能监听真实 UDP 端口,Cloudflare Workers 不支持。 | | --direct-rendezvous-host | | ws-host | rendezvous 的 UDP 地址 | | --direct-rendezvous-port | | ws-port | rendezvous 的 UDP 端口 | | --debug | -d | | 调试日志,使用 -dd 可输出 trace |

客户端、Provider、Connector 命令

client 是通用命令:

  • linksocks client = 正向代理客户端
  • linksocks client -r = 反向模式 provider
  • linksocks provider = linksocks client -r 的快捷命令
  • linksocks connector = 常用于 connector token 的客户端别名

关键参数

参数简写默认值说明
--token-t认证令牌,也支持 LINKSOCKS_TOKEN
--url-uws://localhost:8765WebSocket 服务端地址
--reverse-rfalseclient 切换为反向 provider
--socks-host-s127.0.0.1正向或 connector 模式下的本地 SOCKS5 地址
--socks-port-p9870正向或 connector 模式下的本地 SOCKS5 端口

其他参数

参数简写默认值说明
--connector-token-c代理/自主模式使用的 connector token,也支持 LINKSOCKS_CONNECTOR_TOKEN
--socks-username-n本地 SOCKS5 用户名
--socks-password-w本地 SOCKS5 密码,也支持 LINKSOCKS_SOCKS_PASSWORD
--socks-no-wait-ifalse立即启动本地 SOCKS5
--no-reconnect-Rfalse与服务端断开后直接退出

| --threads | -T | 1 | 数据传输线程数 | | --upstream-proxy | -x | | 连接 WebSocket 服务端时使用的上游代理 | | --no-env-proxy | -E | false | 忽略环境变量中的代理配置 | | --fast-open | -f | false | 在远端完全确认前就允许开始传输数据 | | --direct-mode | | auto | relay-onlyautodirect-only | | --direct-discovery | | stun | 直连候选地址发现方式 | | --direct-host-candidates | | auto | 主机地址候选公布策略 | | --stun-server | | 内置地址池 | 额外 STUN 服务器,可重复指定 | | --direct-only-action | | exit | direct-only 失败时的处理方式 | | --direct-upnp | | false | 为直连启用 UPnP 映射 | | --direct-upnp-lease | | 30m | UPnP 租约时长 | | --direct-upnp-keep | | false | 退出时保留 UPnP 映射 | | --direct-upnp-external-port | | 0 | 显式指定 UPnP 外部端口 | | --debug | -d | | 调试日志,使用 -dd 可输出 trace |

模式示例

1. 正向代理

bash
linksocks server -t my_token
linksocks client -t my_token -u ws://localhost:8765 -p 9870

2. 反向代理

bash
linksocks server -t my_token -r -p 9870
linksocks client -t my_token -u ws://localhost:8765 -r

3. 代理模式

bash
linksocks server -t provider_token -c connector_token -r -p 9870
linksocks provider -t provider_token -u ws://localhost:8765
linksocks connector -t connector_token -u ws://localhost:8765 -p 1180

4. 自主模式

bash
linksocks server -t provider_token -r -a
linksocks provider -t provider_token -c my_connector_token -u ws://localhost:8765
linksocks connector -t my_connector_token -u ws://localhost:8765 -p 1180

5. 直连传输

bash
linksocks server -t my_token --direct-enable
linksocks client -t my_token -u ws://localhost:8765 --direct-mode auto

环境变量

下面这些参数也可以通过环境变量提供:

环境变量对应参数
LINKSOCKS_TOKEN--token
LINKSOCKS_CONNECTOR_TOKEN--connector-token
LINKSOCKS_SOCKS_PASSWORD--socks-password

上游代理格式

--upstream-proxy 同时支持 SOCKS5 和 HTTP 代理 URL:

text
socks5://[username[:password]@]host[:port]
http://[username[:password]@]host[:port]

示例:

  • socks5://proxy.example.com:1080
  • socks5://user:pass@proxy.example.com:1080
  • http://user:pass@proxy.example.com:8080

基于 MIT 许可证发布。