Update documentation

This commit is contained in:
世界 2022-08-19 19:02:32 +08:00
parent 767cd55817
commit 8e8b4dba22
No known key found for this signature in database
GPG key ID: CD109927C34A63C4
9 changed files with 148 additions and 16 deletions

View file

@ -13,6 +13,7 @@ builds:
tags: tags:
- with_clash_api - with_clash_api
- with_quic - with_quic
- with_acme
env: env:
- CGO_ENABLED=0 - CGO_ENABLED=0
targets: targets:

View file

@ -1,9 +0,0 @@
# Benchmark
## Shadowsocks
| / | none | aes-128-gcm | 2022-blake3-aes-128-gcm |
|------------------------------------|:-----------:|:-----------:|:-----------------------:|
| v2ray-core (5.0.7) | 13.0 Gbps | 5.02 Gbps | / |
| shadowsocks-rust (v1.15.0-alpha.5) | 10.7 Gbps | / | 9.36 Gbps |
| sing-box | 29.0 Gbps | / | 11.8 Gbps |

View file

@ -1,3 +1,21 @@
#### 2022/08/19
* Add Hysteria [Inbound](/configuration/inbound/hysteria) and [Outbund](/configuration/outbound/hysteria)
* Add [ACME TLS certificate issuer](/configuration/shared/tls)
* Allow read config from stdin (-c stdin)
* Update gVisor to 20220815.0
#### 2022/08/18
* Fix find process with lwip stack
* Fix crash on shadowsocks server
* Fix crash on darwin tun
* Fix write log to file
#### 2022/08/17
* Improve async dns transports
#### 2022/08/16 #### 2022/08/16
* Add ip_version (route/dns) rule item * Add ip_version (route/dns) rule item

View file

@ -10,7 +10,6 @@
{ {
"type": "tun", "type": "tun",
"tag": "tun-in", "tag": "tun-in",
"interface_name": "tun0", "interface_name": "tun0",
"inet4_address": "172.19.0.1/30", "inet4_address": "172.19.0.1/30",
"inet6_address": "fdfe:dcba:9876::1/128", "inet6_address": "fdfe:dcba:9876::1/128",
@ -24,16 +23,14 @@
], ],
"include_uid_range": [ "include_uid_range": [
[ [
1000, "1000-99999"
99999
] ]
], ],
"exclude_uid": [ "exclude_uid": [
1000 1000
], ],
"exclude_uid_range": [ "exclude_uid_range": [
1000, "1000-99999"
99999
], ],
"include_android_user": [ "include_android_user": [
0, 0,
@ -45,7 +42,6 @@
"exclude_package": [ "exclude_package": [
"com.android.captiveportallogin" "com.android.captiveportallogin"
], ],
"sniff": true, "sniff": true,
"sniff_override_destination": false, "sniff_override_destination": false,
"domain_strategy": "prefer_ipv4" "domain_strategy": "prefer_ipv4"

View file

@ -32,6 +32,10 @@
} }
``` ```
!!! warning ""
WireGuard is not included by default, see [Installation](/#Installation).
### WireGuard Fields ### WireGuard Fields
#### server #### server

112
docs/features.md Normal file
View file

@ -0,0 +1,112 @@
#### Server
| Feature | v2ray-core | clash |
|------------------------------------------------------------|------------|-------|
| Direct inbound | ✔ | X |
| SOCKS4a inbound | ✔ | X |
| Mixed (http/socks) inbound | X | ✔ |
| Shadowsocks AEAD 2022 single-user/multi-user/relay inbound | X | X |
| VMess/Trojan inbound | ✔ | X |
| Naive/Hysteria inbound | X | X |
| Resolve incoming domain names using custom policy | X | X |
| Set system proxy on Windows/Linux/macOS/Android | X | X |
| TLS certificate auto reload | X | X |
| TLS ACME certificate issuer | X | X |
#### Client
| Feature | v2ray-core | clash |
|--------------------------------------------------------|------------------------------------|----------|
| Set upstream client (proxy chain) | TCP only, and has poor performance | TCP only |
| Bind to network interface | Linux only | ✔ |
| Custom dns strategy for resolving server address | X | X |
| Fast fallback (RFC 6555) support for connect to server | X | X |
| SOCKS4/4a outbound | added by me | X |
| Shadowsocks AEAD 2022 outbound | X | X |
| Shadowsocks UDP over TCP | X | X |
| Multiplex (smux/yamux) | mux.cool | X |
| WireGuard/Hysteria outbound | X | X |
| Selector outbound and Clash API | X | ✔ |
#### Sniffing
| Protocol | v2ray-core | clash-premium |
|------------------|-------------|---------------|
| HTTP Host | ✔ | X |
| QUIC ClientHello | added by me | added by me |
| STUN | X | X |
| Feature | v2ray-core | clash-premium |
|-----------------------------------------|---------------------------|---------------|
| For routing only | added by me | X |
| No performance impact (like TCP splice) | no general splice support | X |
| Set separately for each server | ✔ | X |
#### Routing
| Feature | v2ray-core | clash-premium |
|----------------------------|------------|---------------|
| Auto detect interface | X | tun only |
| Set default interface name | X | tun only |
| Set default firewall mark | X | X |
#### Routing Rule
| Rule | v2ray-core | clash |
|----------------------|------------|-------|
| Inbound | ✔ | X |
| IP Version | X | X |
| User from inbound | X | X |
| Sniffed protocol | ✔ | X |
| GeoSite | ✔ | X |
| Process name | X | ✔ |
| Android package name | X | X |
| Linux user/user id | X | X |
| Invert rule | X | X |
| Logical rule | X | X |
#### DNS
| Feature | v2ray-core | clash |
|------------------------------------|-------------|-------|
| DNS proxy | A/AAAA only | ✔ |
| DNS cache | A/AAAA only | X |
| DNS routing | X | X |
| DNS Over QUIC | ✔ | X |
| DNS Over HTTP3 | X | X |
| Fake dns response with custom code | X | X |
#### Tun
| Feature | clash-premium |
|-------------------------------------------|---------------|
| Full IPv6 support | X |
| Auto route on Linux/Windows/maxOS/Android | ✔ |
| Embed windows driver | X |
| Custom address/mtu | X |
| Limit uid (Linux) in routing | X |
| Limit android user in routing | X |
| Limit android package in routing | X |
#### Memory usage
| GeoSite code | sing-box | v2ray-core |
|-------------------|----------|------------|
| cn | 17.8M | 140.3M |
| cn (Loyalsoldier) | 74.3M | 246.7M |
#### Shadowsocks benchmark
| / | none | aes-128-gcm | 2022-blake3-aes-128-gcm |
|------------------------------------|:---------:|:-----------:|:-----------------------:|
| v2ray-core (5.0.7) | 13.0 Gbps | 5.02 Gbps | / |
| shadowsocks-rust (v1.15.0-alpha.5) | 10.7 Gbps | / | 9.36 Gbps |
| sing-box | 29.0 Gbps | / | 11.8 Gbps |
#### License
| / | License |
|------------|-----------------------------------|
| sing-box | GPLv3 or later (Full open-source) |
| v2ray-core | MIT (Full open-source) |
| clash | GPLv3 |

View file

@ -21,6 +21,7 @@ go install -v -tags with_clash_api github.com/sagernet/sing-box/cmd/sing-box@lat
| Build Tag | Description | | Build Tag | Description |
|----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `with_quic` | Build with QUIC support, see [QUIC and HTTP3 dns transports](./configuration/dns/server), [Naive inbound](./configuration/inbound/naive), [Hysteria Inbound](./configuration/inbound/hysteria) and [Hysteria Outbound](./configuration/outbound/hysteria). | | `with_quic` | Build with QUIC support, see [QUIC and HTTP3 dns transports](./configuration/dns/server), [Naive inbound](./configuration/inbound/naive), [Hysteria Inbound](./configuration/inbound/hysteria) and [Hysteria Outbound](./configuration/outbound/hysteria). |
| `with_wireguard` | Build with WireGuard support, see [WireGuard outbound](./configuration/outbound/wireguard). |
| `with_acme` | Build with ACME TLS certificate issuer support, see [TLS](./configuration/shared/tls). | | `with_acme` | Build with ACME TLS certificate issuer support, see [TLS](./configuration/shared/tls). |
| `with_clash_api` | Build with Clash api support, see [Experimental](./configuration/experimental#clash-api-fields). | | `with_clash_api` | Build with Clash api support, see [Experimental](./configuration/experimental#clash-api-fields). |
| `no_gvisor` | Build without gVisor tun stack support, see [Tun inbound](./configuration/inbound/tun#stack). | | `no_gvisor` | Build without gVisor tun stack support, see [Tun inbound](./configuration/inbound/tun#stack). |

8
docs/support.md Normal file
View file

@ -0,0 +1,8 @@
#### Github
Issue: [Issues · SagerNet/sing-box](https://github.com/SagerNet/sing-box/issues)
#### Telegram
Notification channel: [@yapnc](https://t.me/yapnc)
User group: [@yapug](https://t.me/yapug)

View file

@ -32,6 +32,8 @@ theme:
nav: nav:
- Getting Started: - Getting Started:
- index.md - index.md
- Features: features.md
- Support: support.md
- Change Log: changelog.md - Change Log: changelog.md
- Configuration: - Configuration:
- configuration/index.md - configuration/index.md
@ -84,7 +86,6 @@ nav:
- Shadowsocks Client: examples/ss-client.md - Shadowsocks Client: examples/ss-client.md
- Shadowsocks Tun: examples/ss-tun.md - Shadowsocks Tun: examples/ss-tun.md
- DNS Hijack: examples/dns-hijack.md - DNS Hijack: examples/dns-hijack.md
- Benchmark: benchmark.md
markdown_extensions: markdown_extensions:
- pymdownx.inlinehilite - pymdownx.inlinehilite
- pymdownx.snippets - pymdownx.snippets