Go to file
dependabot[bot] b4ce34013f
Bump github.com/panjf2000/ants/v2 from 2.4.7 to 2.5.0
Bumps [github.com/panjf2000/ants/v2](https://github.com/panjf2000/ants) from 2.4.7 to 2.5.0.
- [Release notes](https://github.com/panjf2000/ants/releases)
- [Commits](https://github.com/panjf2000/ants/compare/v2.4.7...v2.5.0)

---
updated-dependencies:
- dependency-name: github.com/panjf2000/ants/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 23:17:21 -07:00
.github Create dependabot.yml 2021-11-16 22:09:49 -08:00
example Tidy up 2021-10-26 19:51:14 -07:00
.gitignore Tidy up 2021-10-26 19:51:14 -07:00
conductor.go Fix: pause/start (again) 2021-10-25 02:57:38 -07:00
daemons.go Merge master changes into dev 2021-11-25 01:01:57 -08:00
debug.go Fix: pause/resume, Finish: authed proxies 2021-10-23 10:25:28 -07:00
defs.go New: SOCKS5 Server timeout independant of Valid. timeout 2021-10-27 09:46:09 -07:00
dispense.go You slep :( 2021-11-23 04:08:22 -08:00
getters.go Add: ability to disable server timeout 2021-10-28 08:51:10 -07:00
go.mod Bump github.com/panjf2000/ants/v2 from 2.4.7 to 2.5.0 2022-05-10 23:17:21 -07:00
LICENSE Add: SetStaleTime, GetStaleTime, GetMaxWorkers 2021-09-13 09:32:07 -07:00
list_management.go Remove: debug output 2021-10-26 19:15:44 -07:00
mrworldwide.go Remove: memconn | Add: http client 2021-11-25 00:14:28 -08:00
mystery_dialer.go Remove: memconn | Add: http client 2021-11-25 00:14:28 -08:00
Prox5.gif Fix gif 2021-10-09 10:50:17 -07:00
README.md please do not violate the docs 2021-11-27 23:42:19 -08:00
setters.go Add: ability to disable server timeout 2021-10-28 08:51:10 -07:00
socks5_server.go Remove: memconn | Add: http client 2021-11-25 00:14:28 -08:00
stats.go Stats: add GetTotalValidated 2021-11-25 00:21:41 -08:00
util.go Fix comment 2021-12-04 09:17:07 -08:00
validator_engine.go Fix: SOCKS5 Server timeout independant of Valid. timeout 2021-10-27 09:48:17 -07:00

Prox5

GoDoc Go Report Card IRC

SOCKS5/4/4a validating proxy pool + server

Prox5 is a golang library for managing, validating, and accessing thousands upon thousands of arbitrary SOCKS proxies.

Notably it features interface compatible dialer functions that dial out from different proxies for every connection, and a SOCKS5 server that utilizes those functions.


Initial validation sequence

  • TCP Dial to the endpoint
  • HTTPS GET request to a list of IP echo endpoints

Prox5 will then store the endpoint's outward appearing IP address and mark it as valid for use.

Accessing validated proxies

  • Retrieve validated 4/4a/5 proxies as simple strings for generic use
  • Use one of the dialer functions with any golang code that calls for a net.Dialer
  • Spin up a SOCKS5 server that will then make rotating use of your validated proxies

The way you choose to use this lib is yours. The API is fairly extensive for you to be able to customize runtime configuration without having to do any surgery.

Things like the amount of validation workers that are concurrently operating, timeouts, and proxy re-use policies may be tuned in real-time. please read the docs.


This project is in development.

It "works" and has been used in "production", but still needs some love.

Please break it and let me know what broke.

See the docs and the example for more details.