New Feature: Configurable Transports #65
fortuna
announced in
Announcements
Replies: 1 comment
-
You can play with the config using the example apps. Local ProxyStart the local webproxy:
Fetch a page with curl:
Page Fetch
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Configurable transports simplifies the way you create and manage transports. With the
x/config package
, you can now useconfig.NewPacketDialer(config)
andconfig.NewStreamDialer(config)
to create transports using a simple text string.Key Benefits
How to Get Started
The configuration string is composed of parts separated by the
|
symbol, which define nested dialers. For example,A|B
means dialerB
takes dialerA
as its input. Each dialer configuration follows a URL format, where the scheme defines the type of Dialer. Supported formats include:Shadowsocks:
ss://[USERINFO]@[HOST]:[PORT]?prefix=[PREFIX]
(compatible with Outline's access keys)SOCKS5:
socks5://[HOST]:[PORT]
(common proxy configuration)Stream Split:
split:[PREFIX_LENGTH]
Direct Dial (TCP/UDP): Represented by an empty string
Examples
Packet splitting
To split outgoing streams on bytes 8 and 123, you can use:
Onion Routing with Shadowsocks
To route your traffic through three Shadowsocks servers, similar to Onion Routing, use:
In that case, [HOST1] will be your entry node, and [HOST3] will be your exit node.
DPI Evasion
To add packet splitting to a Shadowsocks server for enhanced DPI evasion, use:
Beta Was this translation helpful? Give feedback.
All reactions