A TCP (over Dragonite) relay program that can be used to accelerate any TCP connection between your clients and servers.
usage: dragonite-forwarder
-a,--address
Remote server address forclient / Bind address for
server
-d,--download-mbps Download Mbps for client
--debug Set the logging level to DEBUG
--dscp Set DSCP value in the IP
headers
-f,--forwarding-port Local port for client /
Forwarding port for server
-h,--help Help message
-k,--password Encryption password for both
client and server
-l,--limit-mbps Max Mbps per client for server
-m,--mtu MTU of underlying Dragonite
sockets
-p,--port Remote server port for client
/ Bind port for server
-r,--forwarding-address
Forwarding address for server-s,--server-mode Enable server mode
--skip-update Skip the update check
-u,--upload-mbps Upload Mbps for client
-w,--welcome Welcome message of server
--web-panel Enable Web Panel of underlying
Dragonite sockets (Bind to
loopback interface)
--web-panel-public Enable Web Panel of underlying
Dragonite sockets (Bind to all
interfaces)
--window-size-multiplier Send window size multiplier of
underlying Dragonite sockets
(1-10)
Sample configuration
Assume that we have a proxy server running on TCP port 8080, we could use command
./dragonite-forwarder -s -f 8080
For clients,
./dragonite-forwarder -a example.com -f 8080 -d 100 -u 10
will connect to Dragonite Forwarder server at example.com, telling the server our maximum download speed is 100 Mbps, upload speed is 10 Mbps. If all goes well, your local TCP port 8080 will now act as TCP port 8080 of that server. Let your local applications connect to the proxy server localhost:8080 to use the proxy server at example.com:8080 (and enjoy faster connection speeds)
You can also forward the connections to another server, like
./dragonite-forwarder -s -r www.google.com -f 443
Dragonite Forwarder uses UDP port 5233 by default (if there's no -p argument). Configure your firewall settings if necessary.
See the usage section above for more optional settings.
You can also create a text file stored in the directory args.txt to save your command line arguments. The application will load arguments from that file instead of using real command line arguments. This can be used to simplify the launch process.
Precautions
Correct bandwidth information is very important for Dragonite to operating at peak performance. If you are not sure, run several speed tests first.
Dragonite Forwarder has a default MTU (maximum transmission unit, sets an upper bound on the size of UDP packets) of 1300. The receiver's buffer size is also based on the value of this option. If you need to modify this value, make sure that the clients and servers have the same MTU value.
The window size multiplier option is like the "aggressiveness" of the sender. If Dragonite Forwarder is not fully utilizing the bandwidth, try to increase this value step by step.