mirror of
https://github.com/nadoo/glider.git
synced 2025-02-23 01:15:41 +08:00
doc: update documents for ver0.4
This commit is contained in:
parent
e7dd21289f
commit
ee6eec0b52
4
.gitignore
vendored
4
.gitignore
vendored
@ -18,8 +18,8 @@
|
||||
/*.conf
|
||||
/*.rule
|
||||
|
||||
rules.d/*.rule
|
||||
rules.d/*.list
|
||||
config/rules.d/*.rule
|
||||
config/rules.d/*.list
|
||||
|
||||
glider
|
||||
bak/
|
||||
|
27
README.md
27
README.md
@ -9,13 +9,18 @@ we can set up local listeners as proxy, and forward requests to internet via for
|
||||
```
|
||||
|
||||
## Features
|
||||
Listen(local proxy):
|
||||
Listen(local server):
|
||||
- Socks5 proxy
|
||||
- Http proxy
|
||||
- SS proxy
|
||||
- Linux transparent proxy(iptables redirect)
|
||||
- TCP tunnel
|
||||
- DNS tunnel(udp2tcp)
|
||||
- DNS forwarding server(udp2tcp)
|
||||
- Listen on UDP and forward dns requests to remote dns server in TCP via forwarders
|
||||
- Specify different upstream dns server based on destinations(in rule file)
|
||||
- Tunnel mode: forward to a specified upstream dns server
|
||||
- Add resolved IPs to proxy rules
|
||||
- Add resolved IPs to ipset
|
||||
|
||||
Forward(upstream proxy):
|
||||
- Socks5 proxy
|
||||
@ -27,14 +32,12 @@ General:
|
||||
- Forward chain
|
||||
- HA or RR strategy for multiple forwarders
|
||||
- Periodical proxy checking
|
||||
- Rule proxy based on destionation: [Config Examples](examples)
|
||||
- Rule proxy based on destinations: [Config Examples](config/examples)
|
||||
- Ipset management
|
||||
|
||||
TODO:
|
||||
- [x] Specify different remote dns server in rule file
|
||||
- [x] Improve DNS forwarder to resolve domain name and add ip to proxy rules
|
||||
- [x] IPSet management
|
||||
- [x] Improve DNS forwarder to resolve domain name and add ip to ipset
|
||||
- [ ] UDP Tunnel & UDP Relay
|
||||
- [ ] UDP Tunnel
|
||||
- [ ] Linux tproxy support & UDP Relay
|
||||
- [ ] TUN/TAP device support
|
||||
- [ ] Code refactoring: support proxy registering so it can be pluggable
|
||||
- [ ] Conditional compilation so we can abandon needless proxy type and get a smaller binary size
|
||||
@ -196,8 +199,8 @@ checkduration=30
|
||||
#rulefile=home.rule
|
||||
```
|
||||
See:
|
||||
- [glider.conf.example](glider.conf.example)
|
||||
- [examples](examples)
|
||||
- [glider.conf.example](conf/glider.conf.example)
|
||||
- [examples](conf/examples)
|
||||
|
||||
## Rule File
|
||||
Rule file, **same as the config file but specify forwarders based on destinations**:
|
||||
@ -221,8 +224,8 @@ ip=1.1.1.1
|
||||
cidr=192.168.100.0/24
|
||||
```
|
||||
See:
|
||||
- [office.rule.example](rules.d/office.rule.example)
|
||||
- [examples](examples)
|
||||
- [office.rule.example](conf/rules.d/office.rule.example)
|
||||
- [examples](conf/examples)
|
||||
|
||||
## Service
|
||||
- systemd: [https://github.com/nadoo/glider/blob/master/systemd/](https://github.com/nadoo/glider/blob/master/systemd/)
|
||||
|
4
conf.go
4
conf.go
@ -39,7 +39,7 @@ func confInit() {
|
||||
flag.StringSliceUniqVar(&conf.RuleFile, "rulefile", nil, "rule file path")
|
||||
flag.StringVar(&conf.RulesDir, "rules-dir", "rules.d", "rule file folder")
|
||||
|
||||
flag.StringVar(&conf.DNS, "dns", "", "dns listen address")
|
||||
flag.StringVar(&conf.DNS, "dns", "", "dns forwarder server listen address")
|
||||
flag.StringSliceUniqVar(&conf.DNSServer, "dnsserver", []string{"8.8.8.8:53"}, "remote dns server")
|
||||
|
||||
flag.StringVar(&conf.IPSet, "ipset", "", "ipset name")
|
||||
@ -146,7 +146,7 @@ func usage() {
|
||||
fmt.Fprintf(os.Stderr, "\n")
|
||||
|
||||
fmt.Fprintf(os.Stderr, "Available methods for ss:\n")
|
||||
// fmt.Fprintf(os.Stderr, " "+ListCipher())
|
||||
fmt.Fprintf(os.Stderr, " "+ListCipher())
|
||||
fmt.Fprintf(os.Stderr, "\n")
|
||||
fmt.Fprintf(os.Stderr, " NOTE: chacha20-ietf-poly1305 = AEAD_CHACHA20_POLY1305\n")
|
||||
fmt.Fprintf(os.Stderr, "\n")
|
||||
|
Loading…
Reference in New Issue
Block a user