Categorygithub.com/greggyNapalm/proxychick
repository
0.3.3
Repository: https://github.com/greggynapalm/proxychick.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author

# README

Description

Golang-powered library and command line tool to evaluate proxylist.

Codacy Badge codebeat

Installation

ProxyChick is available using pre-build binaries on releases page and the standard go get command.

Install by running:

go get github.com/greggyNapalm/proxychick

Usage

The how-to is available on blog

$ go run cmd/main.go -h
  -c int
    	number of simultaneous HTTP requests(maxConcurrency) (default 300)
  -countryMmdb string
    	Path to GeoLite2-Country.mmdb. You can use PROXYCHICK_MMDB_COUNTRY env var as well
  -i string
    	path to the proxylist file or STDIN (default "proxylist.txt")
  -loop int
    	Loop over proxylist content N times (default 1)
  -noProgresBar
    	Disable the progress meter
  -noStat
    	Disable stats output
  -o string
    	path to the results file (default "STDOUT")
  -p string
    	Proxy protocol. If not specified in proxy URL, choose one of http/https/socks4/socks4a/socks5/socks5h (default "http")
  -t string
    	Target URL(TCP) and HOST:PORT(UDP) (default "https://api.datascrape.tech/latest/ip")
  -to string
    	Timeout for entire request (default "10s")
  -transport string
    	Transport protocol for interaction with the target. Will be incapsulated into proxy protocol. (default "tcp")
  -verbose
    	Enables debug logs
  -version
    	Show version and exit

Results

Diagram

Table

Column nameType and DimentionDescription
proxystringProxy URL that was used in test
resultboolTrue if the target resource replied on time with 200 statsu code
targetStatusCodeintStatus code of target resource HTTP reply
proxyStatusCodeintStatus code of proxy server HTTP reply for "CONNECT" request
latency.ttfbintTime between the initial start and receiving the first byte of the response from the target (ms = milliseconds)
latency.dnsResolveintHow long it takes to perform a DNS lookup (ms)
latency.connintTime passed btw the TCP CONNECT starts from the client to the proxy service and the moment the TCP session turns into the ESTABLISHED state (ms)
latency.tlsHandShakeintHow long it takes to establish TLS session btw client and target (ms)
latency.proxyRespintTime passed btw the start of the request and proxy server reply reded (ms)
ProxyServIPAddrstringIPv4 or IPv6 addr of proxy service entry point we are connecting to
ProxyNodeIPAddrstringIPv4 or IPv6 addr of the proxy exit node
errorstringError description if any