jamesmoriarty / goforward

Go forward proxy with bandwidth limiting.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Goforward

Latest Tag Go Report Card GitHub Workflow Status GitHub Releases

Go forward proxy with rate limiting. The code is based on Michał Łowicki's 100 LOC forward proxy.

Screenshot

Download

Releases can be downloaded from here.

Install

go get -v github.com/jamesmoriarty/goforward
go install github.com/jamesmoriarty/goforward

Usage

goforward
goforward -h
Usage of goforward:
  -port string
        Proxy listen port (default "8888")g
  -rate int
        Proxy bandwidth ratelimit (default 524288)

use with .exe on windows.

Build

go build .\cmd\goforward.go

Test

go test

Why

I needed a way to download 53GB without making my household internet unusable. In summary:

  1. Free games.
  2. Australia's terrible internet.
  3. Learning Go.

First Solution

Shape the traffic in the application.

Application Bandwidth Shaping

Second Solution

Shape the traffic in kernal space.

Windows Filtering Platform

Third Solution

Shape the traffic in user space.

Forward Proxy

About

Go forward proxy with bandwidth limiting.

License:MIT License


Languages

Language:Go 100.0%