mirror of
				https://github.com/nadoo/glider.git
				synced 2025-11-04 07:42:38 +08:00 
			
		
		
		
	doc: update README file format
This commit is contained in:
		
							parent
							
								
									04c6f74343
								
							
						
					
					
						commit
						8d20331096
					
				
							
								
								
									
										29
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										29
									
								
								README.md
									
									
									
									
									
								
							@ -8,14 +8,17 @@
 | 
				
			|||||||
glider is a forward proxy with multiple protocols support, and also a dns forwarding server with ipset management features(like dnsmasq).
 | 
					glider is a forward proxy with multiple protocols support, and also a dns forwarding server with ipset management features(like dnsmasq).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
we can set up local listeners as proxy servers, and forward requests to internet via forwarders.
 | 
					we can set up local listeners as proxy servers, and forward requests to internet via forwarders.
 | 
				
			||||||
```
 | 
					
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
                |Forwarder ----------------->|
 | 
					                |Forwarder ----------------->|
 | 
				
			||||||
   Listener --> |                            | Internet
 | 
					   Listener --> |                            | Internet
 | 
				
			||||||
                |Forwarder --> Forwarder->...|
 | 
					                |Forwarder --> Forwarder->...|
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Features
 | 
					## Features
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Listen (local proxy server):
 | 
					Listen (local proxy server):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Socks5 proxy(tcp&udp)
 | 
					- Socks5 proxy(tcp&udp)
 | 
				
			||||||
- Http proxy(tcp)
 | 
					- Http proxy(tcp)
 | 
				
			||||||
- SS proxy(tcp&udp)
 | 
					- SS proxy(tcp&udp)
 | 
				
			||||||
@ -25,6 +28,7 @@ Listen (local proxy server):
 | 
				
			|||||||
- UDP over TCP tunnel
 | 
					- UDP over TCP tunnel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Forward (local proxy client/upstream proxy server):
 | 
					Forward (local proxy client/upstream proxy server):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Socks5 proxy(tcp&udp)
 | 
					- Socks5 proxy(tcp&udp)
 | 
				
			||||||
- Http proxy(tcp)
 | 
					- Http proxy(tcp)
 | 
				
			||||||
- SS proxy(tcp&udp&uot)
 | 
					- SS proxy(tcp&udp&uot)
 | 
				
			||||||
@ -34,17 +38,22 @@ Forward (local proxy client/upstream proxy server):
 | 
				
			|||||||
- Websocket, use it together with above proxy protocols(tcp)
 | 
					- Websocket, use it together with above proxy protocols(tcp)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
DNS Forwarding Server (udp2tcp):
 | 
					DNS Forwarding Server (udp2tcp):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Listen on UDP and forward dns requests to remote dns server in TCP via forwarders
 | 
					- 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)
 | 
					- Specify different upstream dns server based on destinations(in rule file)
 | 
				
			||||||
- Tunnel mode: forward to a fixed upstream dns server
 | 
					- Tunnel mode: forward to a fixed upstream dns server
 | 
				
			||||||
- Add resolved IPs to proxy rules
 | 
					- Add resolved IPs to proxy rules
 | 
				
			||||||
- Add resolved IPs to ipset
 | 
					- Add resolved IPs to ipset
 | 
				
			||||||
 | 
					- DNS cache
 | 
				
			||||||
 | 
					- Custom dns record
 | 
				
			||||||
 | 
					
 | 
				
			||||||
IPSet Management:
 | 
					IPSet Management:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Add ip/cidrs from rule files on startup
 | 
					- Add ip/cidrs from rule files on startup
 | 
				
			||||||
- Add resolved ips for domains from rule files by dns forwarding server 
 | 
					- Add resolved ips for domains from rule files by dns forwarding server 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
General:
 | 
					General:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Http and socks5 on the same port
 | 
					- Http and socks5 on the same port
 | 
				
			||||||
- Forward chain
 | 
					- Forward chain
 | 
				
			||||||
- HA or RR strategy for multiple forwarders
 | 
					- HA or RR strategy for multiple forwarders
 | 
				
			||||||
@ -52,44 +61,53 @@ General:
 | 
				
			|||||||
- Rule proxy based on destinations: [Config Examples](config/examples)
 | 
					- Rule proxy based on destinations: [Config Examples](config/examples)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
TODO:
 | 
					TODO:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- [ ] IPv6 support
 | 
				
			||||||
- [ ] Transparent UDP proxy (iptables tproxy)
 | 
					- [ ] Transparent UDP proxy (iptables tproxy)
 | 
				
			||||||
- [ ] DNS Cache
 | 
					 | 
				
			||||||
- [ ] Performance tuning
 | 
					- [ ] Performance tuning
 | 
				
			||||||
- [ ] TUN/TAP device support
 | 
					- [ ] TUN/TAP device support
 | 
				
			||||||
- [ ] IPv6 support
 | 
					- [ ] SSH tunnel support (maybe)
 | 
				
			||||||
- [ ] SSH tunnel support
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Install
 | 
					## Install
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Binary:
 | 
					Binary:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- [https://github.com/nadoo/glider/releases](https://github.com/nadoo/glider/releases)
 | 
					- [https://github.com/nadoo/glider/releases](https://github.com/nadoo/glider/releases)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Go Get (requires **Go 1.10+** ):
 | 
					Go Get (requires **Go 1.10+** ):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
go get -u github.com/nadoo/glider
 | 
					go get -u github.com/nadoo/glider
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ArchLinux:
 | 
					ArchLinux:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
sudo pacman -S glider
 | 
					sudo pacman -S glider
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Run
 | 
					## Run
 | 
				
			||||||
 | 
					
 | 
				
			||||||
command line:
 | 
					command line:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
glider -listen :8443 -verbose
 | 
					glider -listen :8443 -verbose
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config file:
 | 
					config file:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
glider -config CONFIGPATH
 | 
					glider -config CONFIGPATH
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
command line with config file:
 | 
					command line with config file:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
glider -config CONFIGPATH -listen :8080 -verbose
 | 
					glider -config CONFIGPATH -listen :8080 -verbose
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Usage
 | 
					## Usage
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
glider v0.6.5 usage:
 | 
					glider v0.6.5 usage:
 | 
				
			||||||
  -checkduration int
 | 
					  -checkduration int
 | 
				
			||||||
@ -248,6 +266,7 @@ Examples:
 | 
				
			|||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Advanced Usage
 | 
					## Advanced Usage
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- [ConfigFile](config)
 | 
					- [ConfigFile](config)
 | 
				
			||||||
  - [glider.conf.example](config/glider.conf.example)
 | 
					  - [glider.conf.example](config/glider.conf.example)
 | 
				
			||||||
  - [office.rule.example](config/rules.d/office.rule.example)
 | 
					  - [office.rule.example](config/rules.d/office.rule.example)
 | 
				
			||||||
@ -256,9 +275,11 @@ Examples:
 | 
				
			|||||||
  - [transparent proxy without dnsmasq](config/examples/9.transparent_proxy_without_dnsmasq)
 | 
					  - [transparent proxy without dnsmasq](config/examples/9.transparent_proxy_without_dnsmasq)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Service
 | 
					## Service
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- systemd: [https://github.com/nadoo/glider/blob/master/systemd/](https://github.com/nadoo/glider/blob/master/systemd/)
 | 
					- systemd: [https://github.com/nadoo/glider/blob/master/systemd/](https://github.com/nadoo/glider/blob/master/systemd/)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Links
 | 
					## Links
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- [go-ss2](https://github.com/shadowsocks/go-shadowsocks2): ss protocol support
 | 
					- [go-ss2](https://github.com/shadowsocks/go-shadowsocks2): ss protocol support
 | 
				
			||||||
- [conflag](https://github.com/nadoo/conflag): command line and config file parse support
 | 
					- [conflag](https://github.com/nadoo/conflag): command line and config file parse support
 | 
				
			||||||
- [ArchLinux](https://www.archlinux.org/packages/community/x86_64/glider): a great linux distribution with glider pre-built package
 | 
					- [ArchLinux](https://www.archlinux.org/packages/community/x86_64/glider): a great linux distribution with glider pre-built package
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user