Skip to content

About

A http/https proxy using QUIC as transport layer

Topics

Resources

Stars

244 stars

Watchers

12 watching

Forks

Latest commit

 

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Quic Proxy

A http/https proxy using QUIC as transport layer.

Why use QUIC as transport layer instead of TCP?

  • Almost 0-RTT for connection establishment
  • Multiplexing
  • Improved congestion control
  • FEC
  • Connection migration

Implementation detail: A http proxy based on QUIC in 100 lines.

Architecture

Installation & Usage

Note: require go version >= 1.16

Install qpserver on your remote server

go get -u github.com/liudanking/quic-proxy/qpserver

Start qpserver:

qpserver -v -l :3443 -cert YOUR_CERT_FILA_PATH -key YOUR_KEY_FILE_PATH -auth username:password

Install qpclient on your local machine

go get -u github.com/liudanking/quic-proxy/qpclient

Start qpclient:

qpclient -v -k -proxy http://YOUR_REMOTE_SERVER:3443 -l 127.0.0.1:18080 -auth username:password

Set proxy for your application on your local machine

Let's take Chrome with SwitchyOmega for example:

Enjoy!

TODO

  • Using custom congestion control

Join Wechat Group

Add the Wechat robot to join group:

About

A http/https proxy using QUIC as transport layer

Topics

Resources

Stars

244 stars

Watchers

12 watching

Forks

Releases

Packages

Used by

Contributors

Languages