https://github.com/jamesmoriarty/goforward
Go forward proxy with bandwidth limiting.
https://github.com/jamesmoriarty/goforward
forward-proxy proxy rate-limiting screenshot
Last synced: about 2 months ago
JSON representation
Go forward proxy with bandwidth limiting.
- Host: GitHub
- URL: https://github.com/jamesmoriarty/goforward
- Owner: jamesmoriarty
- License: mit
- Created: 2020-02-25T12:04:19.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2021-01-06T04:14:33.000Z (over 4 years ago)
- Last Synced: 2025-03-18T22:28:37.601Z (2 months ago)
- Topics: forward-proxy, proxy, rate-limiting, screenshot
- Language: Go
- Homepage:
- Size: 310 KB
- Stars: 28
- Watchers: 2
- Forks: 8
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Goforward
[![Latest Tag][2]][3] [![Go Report Card][4]][5] [![GitHub Workflow Status][6]][7] [![GitHub Releases][12]][3]
Go forward proxy with rate limiting. The code is based on [Michał Łowicki's][8] 100 LOC forward proxy.
![Screenshot][1]
# Download
Releases can be downloaded from [here][3].
# 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](https://www.pcgamer.com/au/faeria-is-the-next-free-epic-game-store-game-kingdom-come-deliverance-and-aztez-are-available-now/).
2. [Australia's terrible internet](https://en.wikipedia.org/wiki/List_of_countries_by_Internet_connection_speeds).
3. [Learning Go](https://golang.org/).## First Solution
Shape the traffic in the application.
[![Application Bandwidth Shaping][9]][9]
## Second Solution
Shape the traffic in kernal space.
[![Windows Filtering Platform][10]][10]
## Third Solution
Shape the traffic in user space.
[![Forward Proxy][11]][11]
[1]: docs/screenshot.PNG
[2]: https://img.shields.io/github/v/tag/jamesmoriarty/goforward.svg?logo=github&label=latest
[3]: https://github.com/jamesmoriarty/goforward/releases
[4]: https://goreportcard.com/badge/github.com/jamesmoriarty/goforward
[5]: https://goreportcard.com/report/github.com/jamesmoriarty/goforward
[6]: https://img.shields.io/github/workflow/status/jamesmoriarty/goforward/Release
[7]: https://github.com/jamesmoriarty/goforward/actions?query=workflow%3ARelease
[8]: https://github.com/mlowicki
[9]: docs/diagram-1.png
[10]: docs/diagram-2.png
[11]: docs/diagram-3.png
[12]: https://img.shields.io/github/downloads/jamesmoriarty/goforward/total