Dialer Proxy
Dialer proxy (dialer-proxy) specifies an upstream proxy in a proxy definition, so the connection to the target proxy server is established through another proxy first. Compared with the relay strategy group, dialer-proxy can relay both TCP and UDP, and its latency tests run on the real chain for more accurate results. It is suitable for building multi-hop proxy paths.
Latency tests reuse the actual connection chain of the proxy. When a proxy is tested, it connects to its server through the upstream specified by dialer-proxy, so the measured latency reflects the full chain.
Basic Usage
Add dialer-proxy to a proxy under proxies, and set it to the name of another proxy or a strategy group.
proxies:
- name: ss1
type: ss
server: 1.2.3.4
port: 8388
cipher: aes-128-gcm
password: example
- name: wg-warp
type: wireguard
server: 162.159.195.5
port: 2408
private-key: <private-key>
public-key: <public-key>
ip: 172.16.0.2
dns:
- 1.1.1.1
dialer-proxy: ss1In this example, the connection from wg-warp to its server is established through ss1, enabling WireGuard over SS.
Use a Strategy Group as Upstream
dialer-proxy can reference a strategy group so the upstream path is selected dynamically.
proxies:
- name: vless-hk
type: vless
server: hk.example.com
port: 443
uuid: <uuid>
tls: true
dialer-proxy: upstream-select
proxy-groups:
- name: upstream-select
type: select
proxies:
- ss1
- ss2
- DIRECTWhen you switch nodes in upstream-select, the upstream for vless-hk changes accordingly.
Multi-Hop Chains
You can build multi-hop chains by assigning dialer-proxy layer by layer.
proxies:
- name: ss-up
type: ss
server: 1.2.3.4
port: 8388
cipher: aes-128-gcm
password: example
- name: trojan-mid
type: trojan
server: mid.example.com
port: 443
password: <password>
dialer-proxy: ss-up
- name: vmess-end
type: vmess
server: end.example.com
port: 443
uuid: <uuid>
tls: true
dialer-proxy: trojan-midNotes
dialer-proxyandinterface-nameare mutually exclusive.dialer-proxyapplies only to real proxies underproxiesand cannot be set insideproxy-groups.- If
dialer-proxypoints to a non-existent proxy or strategy group, the connection is rejected and the proxy becomes unavailable. - Loops are not allowed. If
dialer-proxypoints to a strategy group that includes itself, a loop error is raised. - UDP availability depends on whether the upstream supports UDP or UDP over TCP.
- UDP encapsulation can cause MTU mismatches and packet loss. Reduce UDP over UDP usage and switch to UDP over TCP when necessary.