github.com/sagernet/sing-box@v1.2.7/docs/configuration/inbound/tun.zh.md (about)

     1  !!! error ""
     2  
     3      仅支持 Linux、Windows 和 macOS。
     4  
     5  ### 结构
     6  
     7  ```json
     8  {
     9    "type": "tun",
    10    "tag": "tun-in",
    11    "interface_name": "tun0",
    12    "inet4_address": "172.19.0.1/30",
    13    "inet6_address": "fdfe:dcba:9876::1/126",
    14    "mtu": 9000,
    15    "auto_route": true,
    16    "strict_route": true,
    17    "inet4_route_address": [
    18      "0.0.0.0/1",
    19      "128.0.0.0/1"
    20    ],
    21    "inet6_route_address": [
    22      "::/1",
    23      "8000::/1"
    24    ],
    25    "endpoint_independent_nat": false,
    26    "stack": "system",
    27    "include_uid": [
    28      0
    29    ],
    30    "include_uid_range": [
    31      "1000-99999"
    32    ],
    33    "exclude_uid": [
    34      1000
    35    ],
    36    "exclude_uid_range": [
    37      "1000-99999"
    38    ],
    39    "include_android_user": [
    40      0,
    41      10
    42    ],
    43    "include_package": [
    44      "com.android.chrome"
    45    ],
    46    "exclude_package": [
    47      "com.android.captiveportallogin"
    48    ],
    49    "platform": {
    50      "http_proxy": {
    51        "enabled": false,
    52        "server": "127.0.0.1",
    53        "server_port": 8080
    54      }
    55    },
    56    
    57    ... // 监听字段
    58  }
    59  ```
    60  
    61  !!! note ""
    62  
    63      当内容只有一项时,可以忽略 JSON 数组 [] 标签。
    64  
    65  !!! warning ""
    66  
    67      如果 tun 在非特权模式下运行,地址和 MTU 将不会自动配置,请确保设置正确。
    68  
    69  ### Tun 字段
    70  
    71  #### interface_name
    72  
    73  虚拟设备名称,默认自动选择。
    74  
    75  #### inet4_address
    76  
    77  ==必填==
    78  
    79  tun 接口的 IPv4 前缀。
    80  
    81  #### inet6_address
    82  
    83  tun 接口的 IPv6 前缀。
    84  
    85  #### mtu
    86  
    87  最大传输单元。
    88  
    89  #### auto_route
    90  
    91  设置到 Tun 的默认路由。
    92  
    93  !!! error ""
    94  
    95      为避免流量环回,请设置 `route.auto_detect_interface` 或 `route.default_interface` 或 `outbound.bind_interface`。
    96  
    97  !!! note "与 Android VPN 一起使用"
    98  
    99      VPN 默认优先于 tun。要使 tun 经过 VPN,启用 `route.override_android_vpn`。
   100  
   101  #### strict_route
   102  
   103  启用 `auto_route` 时执行严格的路由规则。
   104  
   105  *在 Linux 中*:
   106  
   107  * 让不支持的网络无法到达
   108  * 将所有连接路由到 tun
   109  
   110  它可以防止地址泄漏,并使 DNS 劫持在 Android 上工作,但你的设备将无法其他设备被访问。
   111  
   112  *在 Windows 中*:
   113  
   114  * 添加防火墙规则以阻止 Windows
   115    的 [普通多宿主 DNS 解析行为](https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/dd197552%28v%3Dws.10%29)
   116    造成的 DNS 泄露
   117  
   118  它可能会使某些应用程序(如 VirtualBox)在某些情况下无法正常工作。
   119  
   120  #### inet4_route_address
   121  
   122  启用 `auto_route` 时使用自定义路由而不是默认路由。
   123  
   124  #### inet6_route_address
   125  
   126  启用 `auto_route` 时使用自定义路由而不是默认路由。
   127  
   128  #### endpoint_independent_nat
   129  
   130  启用独立于端点的 NAT。
   131  
   132  性能可能会略有下降,所以不建议在不需要的时候开启。
   133  
   134  #### udp_timeout
   135  
   136  UDP NAT 过期时间,以秒为单位,默认为 300(5 分钟)。
   137  
   138  #### stack
   139  
   140  TCP/IP 栈。
   141  
   142  | 栈           | 描述                                                                       | 状态    |
   143  |-------------|--------------------------------------------------------------------------|-------|
   144  | system (默认) | 有时性能更好                                                                   | 推荐    |
   145  | gVisor      | 兼容性较好,基于 [google/gvisor](https://github.com/google/gvisor)               | 推荐    |
   146  | LWIP        | 基于 [eycorsican/go-tun2socks](https://github.com/eycorsican/go-tun2socks) | 上游已存档 |
   147  
   148  !!! warning ""
   149  
   150      默认安装不包含 gVisor 和 LWIP 栈,请参阅 [安装](/zh/#_2)。
   151  
   152  #### include_uid
   153  
   154  !!! error ""
   155  
   156      UID 规则仅在 Linux 下被支持,并且需要 `auto_route`。
   157  
   158  限制被路由的用户。默认不限制。
   159  
   160  #### include_uid_range
   161  
   162  限制被路由的用户范围。
   163  
   164  #### exclude_uid
   165  
   166  排除路由的用户。
   167  
   168  #### exclude_uid_range
   169  
   170  排除路由的用户范围。
   171  
   172  #### include_android_user
   173  
   174  !!! error ""
   175  
   176      Android 用户和应用规则仅在 Android 下被支持,并且需要 `auto_route`。
   177  
   178  限制被路由的 Android 用户。
   179  
   180  | 常用用户 | ID |
   181  |--|-----|
   182  | 您 | 0 |
   183  | 工作资料 | 10 |
   184  
   185  #### include_package
   186  
   187  限制被路由的 Android 应用包名。
   188  
   189  #### exclude_package
   190  
   191  排除路由的 Android 应用包名。
   192  
   193  #### platform
   194  
   195  平台特定的设置,由客户端应用提供。
   196  
   197  #### platform.http_proxy
   198  
   199  系统 HTTP 代理设置。
   200  
   201  ### 监听字段
   202  
   203  参阅 [监听字段](/zh/configuration/shared/listen/)。