Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/esrrhs/socksfilter
socks5过滤器。socks5 server with filtering and forwarding
https://github.com/esrrhs/socksfilter
golang socks5-server
Last synced: about 1 month ago
JSON representation
socks5过滤器。socks5 server with filtering and forwarding
- Host: GitHub
- URL: https://github.com/esrrhs/socksfilter
- Owner: esrrhs
- License: mit
- Created: 2020-09-25T12:14:07.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2023-03-18T08:44:53.000Z (almost 2 years ago)
- Last Synced: 2024-06-19T11:17:17.941Z (6 months ago)
- Topics: golang, socks5-server
- Language: Go
- Homepage:
- Size: 1.87 MB
- Stars: 6
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# socksfilter
[](https://github.com/esrrhs/socksfilter)
[](https://github.com/esrrhs/socksfilter)
[![Go Report Card](https://goreportcard.com/badge/github.com/esrrhs/socksfilter)](https://goreportcard.com/report/github.com/esrrhs/socksfilter)
[](https://github.com/esrrhs/socksfilter/releases)
[](https://github.com/esrrhs/socksfilter/releases)
[](https://hub.docker.com/repository/docker/esrrhs/socksfilter)
[](https://github.com/esrrhs/socksfilter/actions)socks5过滤器
# 特性
* 监听端口(默认1080),对外提供socks5服务
* 根据目标IP所在国家过滤(默认CN),命中直连,非命中走后端socks5 server
* 后端聚合多个socks5 server,选择方式:遍历(默认)/随机/Hash,同时跳过无效的# 使用
* 监听本机1080端口,绕过CN地区,非CN地区,转发到后端的socks5 server
```
# ./socksfilter -s "yourserver1:1080 yourserver2:1080 yourserver3:1080"
```
* 也可以使用docker
```
# docker run --name socksfilter -d --restart=always --network host esrrhs/socksfilter ./socksfilter -s "yourserver1:1080 yourserver2:1080 yourserver3:1080"
```
* 更多命令参考-h
```
Usage of ./socksfilter:
-file string
ip file (default "GeoLite2-Country.mmdb")
-l string
listen addr (default ":1080")
-loglevel string
log level (default "info")
-nolog int
write log file
-noprint int
print stdout
-s string
server addr (default "server1 server2 server3")
-select string
select server robin/rand/hash_by_dst_ip/hash_by_src_ip/hash_all (default "robin")
-skip string
skip country (default "CN")
```