SOCKS5/4/4a validating proxy pool. Water's fine on my machine!

Overview

PxndScvm

GoDoc Go Report Card

SOCKS5/4/4a validating proxy pool

Demo

This package is for managing and accessing thousands upon thousands of arbitrary SOCKS proxies.

Pipe it a file filled with SOCKS proxies (host:port per line) and it will validate them continously while automatically weeding out the invalid ones.

This project is in development.

See the docs and the example for more details.

Issues
  • [Request] Save proxy based on proxy information (Location, Country, Anonimity etc)

    [Request] Save proxy based on proxy information (Location, Country, Anonimity etc)

    You could add a option to save proxies based on location, country or anonimity (by using 3rd party API's) The reason why this shouldn't be done WHILE filtering is because it would slow the process down a lot.

    Just a small request, feel free to ignore this lol

    wontfix 
    opened by Nexuzzzz 2
  • Bump github.com/miekg/dns from 1.1.48 to 1.1.49

    Bump github.com/miekg/dns from 1.1.48 to 1.1.49

    Bumps github.com/miekg/dns from 1.1.48 to 1.1.49.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump github.com/panjf2000/ants/v2 from 2.4.7 to 2.4.8

    Bump github.com/panjf2000/ants/v2 from 2.4.7 to 2.4.8

    Bumps github.com/panjf2000/ants/v2 from 2.4.7 to 2.4.8.

    Commits
    • 134f354 Add a new use case
    • fbd1703 Awake the blocking callers when Tune(size int) is invoked to expand the pool ...
    • 0fa2fd6 Resolve lint issues
    • 8d03fcf Fix the bug that blocks forever when call Release() before all tasks are done
    • 1bd4304 Implement binary algorithm for speeding up the cleanup of expired workers in ...
    • f85be55 Use HTTP instead of HTTPS since Camo doesn't support SNI
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Pausing and resuming is FUBAR'd

    Pausing and resuming is FUBAR'd

    It's probably not beyond repair, but it's pretty broken.

    Expected: pause would pause, resume would resume

    Result: it probably pauses but it probably doesn't resume

    Computers, am I right? (should be an easy fix)

    opened by yunginnanet 1
  • Bump github.com/yunginnanet/Rate5 from 1.0.1 to 1.1.0

    Bump github.com/yunginnanet/Rate5 from 1.0.1 to 1.1.0

    Bumps github.com/yunginnanet/Rate5 from 1.0.1 to 1.1.0.

    Release notes

    Sourced from github.com/yunginnanet/Rate5's releases.

    v1.1.0

    Feat: Hardcore limiter and Reset function

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump git.tcp.direct/kayos/common from 0.6.0 to 0.7.0

    Bump git.tcp.direct/kayos/common from 0.6.0 to 0.7.0

    Bumps git.tcp.direct/kayos/common from 0.6.0 to 0.7.0.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump git.tcp.direct/kayos/common from 0.5.4 to 0.5.5

    Bump git.tcp.direct/kayos/common from 0.5.4 to 0.5.5

    Bumps git.tcp.direct/kayos/common from 0.5.4 to 0.5.5.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump github.com/miekg/dns from 1.1.49 to 1.1.50

    Bump github.com/miekg/dns from 1.1.49 to 1.1.50

    Bumps github.com/miekg/dns from 1.1.49 to 1.1.50.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump github.com/miekg/dns from 1.1.48 to 1.1.49

    Bump github.com/miekg/dns from 1.1.48 to 1.1.49

    Bumps github.com/miekg/dns from 1.1.48 to 1.1.49.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump github.com/panjf2000/ants/v2 from 2.4.7 to 2.5.0

    Bump github.com/panjf2000/ants/v2 from 2.4.7 to 2.5.0

    Bumps github.com/panjf2000/ants/v2 from 2.4.7 to 2.5.0.

    Release notes

    Sourced from github.com/panjf2000/ants/v2's releases.

    Ants v2.5.0

    Features

    • Implement pool.ReleaseTimeout() 96d074234a612a15078f25cf2f156f833ff3182f 15f3cdfb7bd40e21ae0eb4e1ba9901d8cfa1cb2a
    • Implement pool.Waiting() 9310acdff2ced5a835ac3ea94206c43b6708c3d3

    Bugfixes

    • Fix some trivial bugs

    Misc

    • Add one more use case (Baidu App) 9d85d57cc4402959180e41c52fcb3baa8bc71ac8
    Commits
    • 9310acd feat: implement pool.Waiting() API
    • 607d039 chore: bump up some dependencies and Go version
    • eedcecd chore: update Github actions workflow
    • 15f3cdf opt: refine ReleaseTimeout()
    • 9d85d57 chore: add more use cases
    • 96d0742 Add a new method -- ReleaseTimeout() for waiting all workers to exit
    • 134f354 Add a new use case
    • fbd1703 Awake the blocking callers when Tune(size int) is invoked to expand the pool ...
    • 0fa2fd6 Resolve lint issues
    • 8d03fcf Fix the bug that blocks forever when call Release() before all tasks are done
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump github.com/miekg/dns from 1.1.47 to 1.1.48

    Bump github.com/miekg/dns from 1.1.47 to 1.1.48

    Bumps github.com/miekg/dns from 1.1.47 to 1.1.48.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Feature Request: proxy dns resolver testing; socks4a, socks5 (aka 5h)

    Feature Request: proxy dns resolver testing; socks4a, socks5 (aka 5h)

    Testing the proxies for proper dns resolving capabilities (functioning, then ensuring the proxies aren't returning any unexpected responses) may be of interest to some users.

    enhancement good first issue 
    opened by m0rb 0
Releases(v0.6.1)
Inspired by go-socks5,This package provides full functionality of socks5 protocol.

The protocol described here is designed to provide a framework for client-server applications in both the TCP and UDP domains to conveniently and securely use the services of a network firewall.

Zhangliu 69 Aug 15, 2022
A golang library about socks5, supports all socks5 commands. That Provides server and client and easy to use. Compatible with socks4 and socks4a.

socks5 This is a Golang implementation of the Socks5 protocol library. To see in this SOCKS Protocol Version 5. This library is also compatible with S

chenhao zhang 40 Jul 4, 2022
A SOCKS (SOCKS4, SOCKS4A and SOCKS5) Proxy Package for Go

SOCKS SOCKS is a SOCKS4, SOCKS4A and SOCKS5 proxy package for Go. Quick Start Get the package go get -u "h12.io/socks" Import the package import "h12

Hǎi-Liàng 427 Aug 11, 2022
socks5 proxy server with auto upstream selection

atproxy socks5 proxy server with auto upstream selection installation go install github.com/reusee/atproxy/[email protected] select process for each cli

null 10 Dec 22, 2021
A socks5 proxy over quica

A socks5 proxy over quica

null 18 Jul 19, 2022
SOCKS5 proxy for go-gemini

go-gemini-socks5 SOCKS5 proxy for go-gemini. go get github.com/makeworld-the-better-one/go-gemini-socks5 Import as "github.com/makeworld-the-better-o

makeworld 1 Apr 6, 2022
A socks5 server(tcp/udp) written in golang.

socks5-server A socks5 server(tcp/udp) written in golang. Usage Usage of /main: -l string local address (default "127.0.0.1:1080") -p stri

null 26 Aug 3, 2022
Golang 实现的简单 Socks5 代理

Socks5-Proxy 简介:Golang 实现的 Socks5 代理服务端,支持用户名、密码验证。 安装 下载 git clone https://github.com/truda8/Socks5-Proxy.git 构建 go build -o socks5proxy main.go 添加执

Truda 2 Dec 15, 2021
SOCKS5 server in Golang

go-socks5 Provides the socks5 package that implements a SOCKS5 server. SOCKS (Secure Sockets) is used to route traffic between a client and server thr

null 1 Feb 7, 2022
Crimson prober - Asynchronous TCP scanner through SOCKS5 proxies

Crimson Prober v1 Alpha version of Asynchronous TCP scanner through SOCKS5 proxi

karmaz 2 Feb 19, 2022
HTTP IP Proxy Pool

HTTP IP Proxy Pool

null 12 Jun 29, 2022
GBPool-- a simple but useful golang free proxy pool

GBPool-- a simple but useful golang free proxy pool Intro(English) (中文) GBPool, golang baipiao proxy pool, a free & simple golang proxy pool module, g

null 3 May 30, 2022
An experimental Tor-Proxy serivce written in Go using Go-proxy and Go-libtor.

tor-proxy An experimental standalone tor-proxy service built with Go, using go-proxy, go-libtor and bine. This is a simple replacement to Tor's origin

Narasimha Prasanna HN 35 Jul 5, 2022
mt-multiserver-proxy is a reverse proxy designed for linking multiple Minetest servers together

mt-multiserver-proxy mt-multiserver-proxy is a reverse proxy designed for linking multiple Minetest servers together. It is the successor to multiserv

null 11 Jul 31, 2022
A simple tool to convert socket5 proxy protocol to http proxy protocol

Socket5 to HTTP 这是一个超简单的 Socket5 代理转换成 HTTP 代理的小工具。 如何安装? Golang 用户 # Required Go 1.17+ go install github.com/mritd/[email protected] Docker 用户 docker pull m

mritd 8 Aug 4, 2022
IP2Proxy Go package allows users to query an IP address to determine if it was being used as open proxy, web proxy, VPN anonymizer and TOR exits.

IP2Proxy Go Package This package allows user to query an IP address if it was being used as VPN anonymizer, open proxies, web proxies, Tor exits, data

IP2Location 12 Aug 3, 2022
Tcp-proxy - A dead simple reverse proxy server.

tcp-proxy A proxy that forwords from a host to another. Building go build -ldflags="-X 'main.Version=$(git describe --tags $(git rev-list --tags --max

Injamul Mohammad Mollah 0 Jan 2, 2022