Files
2026-07-25 14:00:38 +08:00

8788 lines
195 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html lang="zh" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="description" content="The universal proxy platform.">
<meta name="author" content="nekohasekai">
<link rel="canonical" href="https://sing-box.sagernet.org/zh/configuration/endpoint/openvpn-client/">
<link rel="prev" href="../openconnect/">
<link rel="next" href="../openvpn-server/">
<link rel="alternate" href="../../../../configuration/endpoint/openvpn-client/" hreflang="en">
<link rel="alternate" href="./" hreflang="zh">
<link rel="icon" href="../../../../assets/icon.svg">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.7.2">
<title>OpenVPN Client - sing-box</title>
<link rel="stylesheet" href="../../../../assets/stylesheets/main.484c7ddc.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.ab4e12ef.min.css">
<style>:root{--md-admonition-icon--question:url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M20%204c1.11%200%202%20.89%202%202v12c0%201.11-.89%202-2%202H4c-1.11%200-2-.89-2-2V6c0-1.11.89-2%202-2zM8.5%2015V9H7.25v3.5L4.75%209H3.5v6h1.25v-3.5L7.3%2015zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7%203.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1%201%200%200%200%201%201h4a1%201%200%200%200%201-1%22/%3E%3C/svg%3E');}</style>
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
<script>__md_scope=new URL("../../../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
</head>
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo">
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#openvpn-客户端" class="md-skip">
跳转至
</a>
</div>
<div data-md-component="announce">
</div>
<header class="md-header" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="页眉">
<a href="../../../" title="sing-box" class="md-header__button md-logo" aria-label="sing-box" data-md-component="logo">
<img src="../../../../assets/icon.svg" alt="logo">
</a>
<label class="md-header__button md-icon" for="__drawer">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
</label>
<div class="md-header__title" data-md-component="header-title">
<div class="md-header__ellipsis">
<div class="md-header__topic">
<span class="md-ellipsis">
sing-box
</span>
</div>
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
OpenVPN Client
</span>
</div>
</div>
</div>
<form class="md-header__option" data-md-component="palette">
<input class="md-option" data-md-color-media="(prefers-color-scheme)" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_0">
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7a5 5 0 0 0-5 5 5 5 0 0 0 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1M8 13h8v-2H8zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4a5 5 0 0 0 5-5 5 5 0 0 0-5-5"/></svg>
</label>
<input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="indigo" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_1">
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_2" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 7H7a5 5 0 0 0-5 5 5 5 0 0 0 5 5h10a5 5 0 0 0 5-5 5 5 0 0 0-5-5m0 8a3 3 0 0 1-3-3 3 3 0 0 1 3-3 3 3 0 0 1 3 3 3 3 0 0 1-3 3"/></svg>
</label>
<input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="black" data-md-color-accent="indigo" aria-label="Switch to system preference" type="radio" name="__palette" id="__palette_2">
<label class="md-header__button md-icon" title="Switch to system preference" for="__palette_0" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 7H7a5 5 0 0 0-5 5 5 5 0 0 0 5 5h10a5 5 0 0 0 5-5 5 5 0 0 0-5-5M7 15a3 3 0 0 1-3-3 3 3 0 0 1 3-3 3 3 0 0 1 3 3 3 3 0 0 1-3 3"/></svg>
</label>
</form>
<script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
<div class="md-header__option">
<div class="md-select">
<button class="md-header__button md-icon" aria-label="选择当前语言">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m12.87 15.07-2.54-2.51.03-.03A17.5 17.5 0 0 0 14.07 6H17V4h-7V2H8v2H1v2h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2zm-2.62 7 1.62-4.33L19.12 17z"/></svg>
</button>
<div class="md-select__inner">
<ul class="md-select__list">
<li class="md-select__item">
<a href="../../../../configuration/endpoint/openvpn-client/" hreflang="en" class="md-select__link">
English
</a>
</li>
<li class="md-select__item">
<a href="./" hreflang="zh" class="md-select__link">
简体中文
</a>
</li>
</ul>
</div>
</div>
</div>
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="搜索" placeholder="搜索" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
</label>
<nav class="md-search__options" aria-label="查找">
<button type="reset" class="md-search__icon md-icon" title="清空当前内容" aria-label="清空当前内容" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
</button>
</nav>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
<div class="md-search-result" data-md-component="search-result">
<div class="md-search-result__meta">
正在初始化搜索引擎
</div>
<ol class="md-search-result__list" role="presentation"></ol>
</div>
</div>
</div>
</div>
</div>
<div class="md-header__source">
<a href="https://github.com/SagerNet/sing-box" title="前往仓库" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M439.6 236.1 244 40.5c-5.4-5.5-12.8-8.5-20.4-8.5s-15 3-20.4 8.4L162.5 81l51.5 51.5c27.1-9.1 52.7 16.8 43.4 43.7l49.7 49.7c34.2-11.8 61.2 31 35.5 56.7-26.5 26.5-70.2-2.9-56-37.3L240.3 199v121.9c25.3 12.5 22.3 41.8 9.1 55-6.4 6.4-15.2 10.1-24.3 10.1s-17.8-3.6-24.3-10.1c-17.6-17.6-11.1-46.9 11.2-56v-123c-20.8-8.5-24.6-30.7-18.6-45L142.6 101 8.5 235.1C3 240.6 0 247.9 0 255.5s3 15 8.5 20.4l195.6 195.7c5.4 5.4 12.7 8.4 20.4 8.4s15-3 20.4-8.4l194.7-194.7c5.4-5.4 8.4-12.8 8.4-20.4s-3-15-8.4-20.4"/></svg>
</div>
<div class="md-source__repository">
SagerNet/sing-box
</div>
</a>
</div>
</nav>
</header>
<div class="md-container" data-md-component="container">
<nav class="md-tabs" aria-label="标签" data-md-component="tabs">
<div class="md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item">
<a href="../../../" class="md-tabs__link">
开始
</a>
</li>
<li class="md-tabs__item">
<a href="../../../installation/package-manager/" class="md-tabs__link">
安装
</a>
</li>
<li class="md-tabs__item">
<a href="../../../clients/" class="md-tabs__link">
图形界面客户端
</a>
</li>
<li class="md-tabs__item">
<a href="../../../manual/proxy/server/" class="md-tabs__link">
手册
</a>
</li>
<li class="md-tabs__item md-tabs__item--active">
<a href="../../" class="md-tabs__link">
配置
</a>
</li>
</ul>
</div>
</nav>
<main class="md-main" data-md-component="main">
<div class="md-main__inner md-grid">
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary md-nav--lifted" aria-label="导航栏" data-md-level="0">
<label class="md-nav__title" for="__drawer">
<a href="../../../" title="sing-box" class="md-nav__button md-logo" aria-label="sing-box" data-md-component="logo">
<img src="../../../../assets/icon.svg" alt="logo">
</a>
sing-box
</label>
<div class="md-nav__source">
<a href="https://github.com/SagerNet/sing-box" title="前往仓库" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M439.6 236.1 244 40.5c-5.4-5.5-12.8-8.5-20.4-8.5s-15 3-20.4 8.4L162.5 81l51.5 51.5c27.1-9.1 52.7 16.8 43.4 43.7l49.7 49.7c34.2-11.8 61.2 31 35.5 56.7-26.5 26.5-70.2-2.9-56-37.3L240.3 199v121.9c25.3 12.5 22.3 41.8 9.1 55-6.4 6.4-15.2 10.1-24.3 10.1s-17.8-3.6-24.3-10.1c-17.6-17.6-11.1-46.9 11.2-56v-123c-20.8-8.5-24.6-30.7-18.6-45L142.6 101 8.5 235.1C3 240.6 0 247.9 0 255.5s3 15 8.5 20.4l195.6 195.7c5.4 5.4 12.7 8.4 20.4 8.4s15-3 20.4-8.4l194.7-194.7c5.4-5.4 8.4-12.8 8.4-20.4s-3-15-8.4-20.4"/></svg>
</div>
<div class="md-source__repository">
SagerNet/sing-box
</div>
</a>
</div>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_1" >
<div class="md-nav__link md-nav__container">
<a href="../../../" class="md-nav__link ">
<span class="md-ellipsis">
开始
</span>
</a>
<label class="md-nav__link " for="__nav_1" id="__nav_1_label" tabindex="0">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1">
<span class="md-nav__icon md-icon"></span>
开始
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../changelog/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m23 12-2.44-2.78.34-3.68-3.61-.82-1.89-3.18L12 3 8.6 1.54 6.71 4.72l-3.61.81.34 3.68L1 12l2.44 2.78-.34 3.69 3.61.82 1.89 3.18L12 21l3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-10 5h-2v-2h2zm0-4h-2V7h2z"/></svg>
<span class="md-ellipsis">
更新日志
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../migration/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M2 2h14v14H2zm20 6v14H8v-4h2v2h10V10h-2V8z"/></svg>
<span class="md-ellipsis">
迁移指南
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../deprecated/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 4v2H3V4h3.5l1-1h5l1 1zM4 19V7h12v12c0 1.1-.9 2-2 2H6c-1.1 0-2-.9-2-2m15-4h2v2h-2zm0-8h2v6h-2z"/></svg>
<span class="md-ellipsis">
废弃功能列表
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../support/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 12V3a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v14l4-4h10a1 1 0 0 0 1-1m4-6h-2v9H6v2a1 1 0 0 0 1 1h11l4 4V7a1 1 0 0 0-1-1"/></svg>
<span class="md-ellipsis">
支持
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../sponsors/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M16 12c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5m5.45 5.6c-.39-.4-.88-.6-1.45-.6h-7l-2.08-.73.33-.94L13 16h2.8c.35 0 .63-.14.86-.37s.34-.51.34-.82c0-.54-.26-.91-.78-1.12L8.95 11H7v9l7 2 8.03-3c.01-.53-.19-1-.58-1.4M5 11H.984v11H5z"/></svg>
<span class="md-ellipsis">
Sponsors
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_2" >
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
<span class="md-ellipsis">
安装
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2">
<span class="md-nav__icon md-icon"></span>
安装
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../installation/package-manager/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M5.12 5h13.75l-.94-1h-12zm15.42.23c.29.34.46.77.46 1.27V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6.5c0-.5.17-.93.46-1.27l1.38-1.68C5.12 3.21 5.53 3 6 3h12c.47 0 .88.21 1.15.55zM6 18h6v-3H6z"/></svg>
<span class="md-ellipsis">
包管理器
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../installation/docker/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21.81 10.25c-.06-.04-.56-.43-1.64-.43-.28 0-.56.03-.84.08-.21-1.4-1.38-2.11-1.43-2.14l-.29-.17-.18.27c-.24.36-.43.77-.51 1.19-.2.8-.08 1.56.33 2.21-.49.28-1.29.35-1.46.35H2.62c-.34 0-.62.28-.62.63 0 1.15.18 2.3.58 3.38.45 1.19 1.13 2.07 2 2.61.98.6 2.59.94 4.42.94.79 0 1.61-.07 2.42-.22 1.12-.2 2.2-.59 3.19-1.16A8.3 8.3 0 0 0 16.78 16c1.05-1.17 1.67-2.5 2.12-3.65h.19c1.14 0 1.85-.46 2.24-.85.26-.24.45-.53.59-.87l.08-.24zm-17.96.99h1.76c.08 0 .16-.07.16-.16V9.5c0-.08-.07-.16-.16-.16H3.85c-.09 0-.16.07-.16.16v1.58c.01.09.07.16.16.16m2.43 0h1.76c.08 0 .16-.07.16-.16V9.5c0-.08-.07-.16-.16-.16H6.28c-.09 0-.16.07-.16.16v1.58c.01.09.07.16.16.16m2.47 0h1.75c.1 0 .17-.07.17-.16V9.5c0-.08-.06-.16-.17-.16H8.75c-.08 0-.15.07-.15.16v1.58c0 .09.06.16.15.16m2.44 0h1.77c.08 0 .15-.07.15-.16V9.5c0-.08-.06-.16-.15-.16h-1.77c-.08 0-.15.07-.15.16v1.58c0 .09.07.16.15.16M6.28 9h1.76c.08 0 .16-.09.16-.18V7.25c0-.09-.07-.16-.16-.16H6.28c-.09 0-.16.06-.16.16v1.57c.01.09.07.18.16.18m2.47 0h1.75c.1 0 .17-.09.17-.18V7.25c0-.09-.06-.16-.17-.16H8.75c-.08 0-.15.06-.15.16v1.57c0 .09.06.18.15.18m2.44 0h1.77c.08 0 .15-.09.15-.18V7.25c0-.09-.07-.16-.15-.16h-1.77c-.08 0-.15.06-.15.16v1.57c0 .09.07.18.15.18m0-2.28h1.77c.08 0 .15-.07.15-.16V5c0-.1-.07-.17-.15-.17h-1.77c-.08 0-.15.06-.15.17v1.56c0 .08.07.16.15.16m2.46 4.52h1.76c.09 0 .16-.07.16-.16V9.5c0-.08-.07-.16-.16-.16h-1.76c-.08 0-.15.07-.15.16v1.58c0 .09.07.16.15.16"/></svg>
<span class="md-ellipsis">
Docker
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../installation/build-from-source/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 9h5.5L13 3.5zM6 2h8l6 6v12a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4c0-1.11.89-2 2-2m.12 13.5 3.74 3.74 1.42-1.41-2.33-2.33 2.33-2.33-1.42-1.41zm11.16 0-3.74-3.74-1.42 1.41 2.33 2.33-2.33 2.33 1.42 1.41z"/></svg>
<span class="md-ellipsis">
从源代码构建
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
<div class="md-nav__link md-nav__container">
<a href="../../../clients/" class="md-nav__link ">
<span class="md-ellipsis">
图形界面客户端
</span>
</a>
<label class="md-nav__link " for="__nav_3" id="__nav_3_label" tabindex="0">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
图形界面客户端
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
<div class="md-nav__link md-nav__container">
<a href="../../../clients/android/" class="md-nav__link ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M16.61 15.15c-.46 0-.84-.37-.84-.83s.38-.82.84-.82.84.36.84.82-.38.83-.84.83m-9.2 0c-.46 0-.84-.37-.84-.83s.38-.82.84-.82.83.36.83.82-.37.83-.83.83m9.5-5.01 1.67-2.88c.09-.17.03-.38-.13-.47-.17-.1-.38-.04-.45.13l-1.71 2.91A10.15 10.15 0 0 0 12 8.91c-1.53 0-3 .33-4.27.91L6.04 6.91a.334.334 0 0 0-.47-.13c-.17.09-.22.3-.13.47l1.66 2.88C4.25 11.69 2.29 14.58 2 18h20c-.28-3.41-2.23-6.3-5.09-7.86"/></svg>
<span class="md-ellipsis">
Android
</span>
</a>
<label class="md-nav__link " for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_2">
<span class="md-nav__icon md-icon"></span>
Android
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../clients/android/features/" class="md-nav__link">
<span class="md-ellipsis">
特性
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_3" >
<div class="md-nav__link md-nav__container">
<a href="../../../clients/apple/" class="md-nav__link ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47-1.34.03-1.77-.79-3.29-.79-1.53 0-2 .77-3.27.82-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51 1.28-.02 2.5.87 3.29.87.78 0 2.26-1.07 3.81-.91.65.03 2.47.26 3.64 1.98-.09.06-2.17 1.28-2.15 3.81.03 3.02 2.65 4.03 2.68 4.04-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5.13 1.17-.34 2.35-1.04 3.19-.69.85-1.83 1.51-2.95 1.42-.15-1.15.41-2.35 1.05-3.11"/></svg>
<span class="md-ellipsis">
Apple 平台
</span>
</a>
<label class="md-nav__link " for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_3">
<span class="md-nav__icon md-icon"></span>
Apple 平台
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../clients/apple/features/" class="md-nav__link">
<span class="md-ellipsis">
特性
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_4" >
<div class="md-nav__link md-nav__container">
<a href="../../../clients/desktop/" class="md-nav__link ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 6h16v10H4m16 2a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H4c-1.11 0-2 .89-2 2v10a2 2 0 0 0 2 2H0v2h24v-2z"/></svg>
<span class="md-ellipsis">
Desktop
</span>
</a>
<label class="md-nav__link " for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_4">
<span class="md-nav__icon md-icon"></span>
Desktop
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../clients/desktop/features/" class="md-nav__link">
<span class="md-ellipsis">
特性
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../../clients/general/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 17.25V21h3.75L17.81 9.93l-3.75-3.75zm19.61 1.11-4.25 4.25-5.2-5.2 1.77-1.77 1 1 2.47-2.48 1.42 1.42L18.36 17l1.06 1 1.42-1.4zm-16-7.53L1.39 5.64l4.25-4.25L7.4 3.16 4.93 5.64 6 6.7l2.46-2.48 1.42 1.42-1.42 1.41 1 1zM20.71 7c.39-.39.39-1 0-1.41l-2.34-2.3c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75z"/></svg>
<span class="md-ellipsis">
通用
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../clients/privacy/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 12h7c-.53 4.11-3.28 7.78-7 8.92zH5V6.3l7-3.11M12 1 3 5v6c0 5.55 3.84 10.73 9 12 5.16-1.27 9-6.45 9-12V5z"/></svg>
<span class="md-ellipsis">
隐私政策
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<span class="md-ellipsis">
手册
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
手册
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_1" >
<label class="md-nav__link" for="__nav_4_1" id="__nav_4_1_label" tabindex="0">
<span class="md-ellipsis">
Proxy
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_1">
<span class="md-nav__icon md-icon"></span>
Proxy
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../manual/proxy/server/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 1h16a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1m0 8h16a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1m0 8h16a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1M9 5h1V3H9zm0 8h1v-2H9zm0 8h1v-2H9zM5 3v2h2V3zm0 8v2h2v-2zm0 8v2h2v-2z"/></svg>
<span class="md-ellipsis">
Server
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../manual/proxy/client/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M22 17h-4v-7h4m1-2h-6a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1M4 6h18V4H4a2 2 0 0 0-2 2v11H0v3h14v-3H4z"/></svg>
<span class="md-ellipsis">
Client
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
<span class="md-ellipsis">
Proxy Protocol
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Proxy Protocol
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../manual/proxy-protocol/shadowsocks/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m2 21 21-9L2 3v7l15 2-15 2z"/></svg>
<span class="md-ellipsis">
Shadowsocks
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../manual/proxy-protocol/trojan/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M22 6v3.5l-1.5.5-1.54-2.46c-.13-.21-.46-.12-.46.13v3.58c0 .98-.39 1.86-1 2.53V21H15v-6h-.25c-.21 0-.42-.03-.62-.06l-4.44-.74-1.12 2.01.96 4.79H7l-1-4.75c-.03-.3 0-.6.16-.86l1.02-1.81a3.27 3.27 0 0 1-1.68-2.77c-.04.15-.06.37-.03.69.03.44.14 1.09.07 1.81-.04.72-.37 1.46-.79 1.95-.43.49-.9.83-1.4 1.09l-.7-.7c.19-.47.38-.89.42-1.28.06-.37-.01-.67-.12-.94l-.53-1.13c-.21-.51-.47-1.25-.42-2.12.03-.85.5-1.96 1.39-2.57.9-.61 1.87-.69 2.66-.53.5.1 1.01.34 1.45.68.37-.17.8-.26 1.25-.26h5.75V7c0-2.21 1.79-4 4-4H22l-.89 1.34c.54.36.89.97.89 1.66"/></svg>
<span class="md-ellipsis">
Trojan
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../manual/proxy-protocol/hysteria2/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M11 15H6l7-14v8h5l-7 14z"/></svg>
<span class="md-ellipsis">
Hysteria 2
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_3" >
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
<span class="md-ellipsis">
Misc
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Misc
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../manual/misc/tunnelvision/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14.2 13.5v1.24c-.7.6-1.2 1.5-1.2 2.46v3.5c0 .46.1.9.27 1.3H6c-1.11 0-2-.89-2-2V4a2 2 0 0 1 2-2h1v7l2.5-1.5L12 9V2h6a2 2 0 0 1 2 2v5.11c-.32-.07-.66-.11-1-.11-2.6 0-4.8 2.06-4.8 4.5m7.6 2.5h-4.3v-2.5c0-.8.7-1.3 1.5-1.3s1.5.5 1.5 1.3v.5h1.3v-.5c0-1.4-1.4-2.5-2.8-2.5s-2.8 1.1-2.8 2.5V16c-.6 0-1.2.6-1.2 1.2v3.5c0 .7.6 1.3 1.2 1.3h5.5c.7 0 1.3-.6 1.3-1.2v-3.5c0-.7-.6-1.3-1.2-1.3"/></svg>
<span class="md-ellipsis">
TunnelVision
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<div class="md-nav__link md-nav__container">
<a href="../../" class="md-nav__link ">
<span class="md-ellipsis">
配置
</span>
</a>
<label class="md-nav__link " for="__nav_5" id="__nav_5_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
配置
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../schema/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
JSON Schema
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_3" >
<div class="md-nav__link md-nav__container">
<a href="../../log/" class="md-nav__link ">
<span class="md-ellipsis">
日志
</span>
</a>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_3">
<span class="md-nav__icon md-icon"></span>
日志
</label>
<ul class="md-nav__list" data-md-scrollfix>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_4" >
<div class="md-nav__link md-nav__container">
<a href="../../dns/" class="md-nav__link ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m23 12-2.44-2.78.34-3.68-3.61-.82-1.89-3.18L12 3 8.6 1.54 6.71 4.72l-3.61.81.34 3.68L1 12l2.44 2.78-.34 3.69 3.61.82 1.89 3.18L12 21l3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-10 5h-2v-2h2zm0-4h-2V7h2z"/></svg>
<span class="md-ellipsis">
DNS
</span>
</a>
<label class="md-nav__link " for="__nav_5_4" id="__nav_5_4_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_4">
<span class="md-nav__icon md-icon"></span>
DNS
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_4_2" >
<div class="md-nav__link md-nav__container">
<a href="../../dns/server/" class="md-nav__link ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m23 12-2.44-2.78.34-3.68-3.61-.82-1.89-3.18L12 3 8.6 1.54 6.71 4.72l-3.61.81.34 3.68L1 12l2.44 2.78-.34 3.69 3.61.82 1.89 3.18L12 21l3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-10 5h-2v-2h2zm0-4h-2V7h2z"/></svg>
<span class="md-ellipsis">
DNS 服务器
</span>
</a>
<label class="md-nav__link " for="__nav_5_4_2" id="__nav_5_4_2_label" tabindex="0">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_5_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_4_2">
<span class="md-nav__icon md-icon"></span>
DNS 服务器
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../dns/server/legacy/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 13c.7 0 1.37.13 2 .35V9l-6-6H5c-1.11 0-2 .89-2 2v14a2 2 0 0 0 2 2h8.35c-.22-.63-.35-1.3-.35-2 0-3.31 2.69-6 6-6m-5-8.5 5.5 5.5H14zM20.41 19l2.13 2.12-1.42 1.42L19 20.41l-2.12 2.13-1.41-1.42L17.59 19l-2.12-2.12 1.41-1.41L19 17.59l2.12-2.12 1.42 1.41z"/></svg>
<span class="md-ellipsis">
Legacy
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/local/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Local
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/hosts/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Hosts
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/tcp/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
TCP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/udp/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
UDP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/tls/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
TLS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/quic/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
QUIC
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/https/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
HTTPS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/http3/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
HTTP3
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/dhcp/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
DHCP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/mdns/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
mDNS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/fakeip/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
FakeIP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/tailscale/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Tailscale
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/openconnect/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
OpenConnect
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/openvpn/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
OpenVPN
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/server/resolved/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Resolved
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../dns/rule/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m23 12-2.44-2.78.34-3.68-3.61-.82-1.89-3.18L12 3 8.6 1.54 6.71 4.72l-3.61.81.34 3.68L1 12l2.44 2.78-.34 3.69 3.61.82 1.89 3.18L12 21l3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-10 5h-2v-2h2zm0-4h-2V7h2z"/></svg>
<span class="md-ellipsis">
DNS 规则
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/rule_action/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
DNS 规则动作
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../dns/fakeip/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 13c.7 0 1.37.13 2 .35V9l-6-6H5c-1.11 0-2 .89-2 2v14a2 2 0 0 0 2 2h8.35c-.22-.63-.35-1.3-.35-2 0-3.31 2.69-6 6-6m-5-8.5 5.5 5.5H14zM20.41 19l2.13 2.12-1.42 1.42L19 20.41l-2.12 2.13-1.41-1.42L17.59 19l-2.12-2.12 1.41-1.41L19 17.59l2.12-2.12 1.42 1.41z"/></svg>
<span class="md-ellipsis">
FakeIP
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../ntp/" class="md-nav__link">
<span class="md-ellipsis">
NTP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../certificate/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Certificate
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_7" >
<div class="md-nav__link md-nav__container">
<a href="../../route/" class="md-nav__link ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m23 12-2.44-2.78.34-3.68-3.61-.82-1.89-3.18L12 3 8.6 1.54 6.71 4.72l-3.61.81.34 3.68L1 12l2.44 2.78-.34 3.69 3.61.82 1.89 3.18L12 21l3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-10 5h-2v-2h2zm0-4h-2V7h2z"/></svg>
<span class="md-ellipsis">
路由
</span>
</a>
<label class="md-nav__link " for="__nav_5_7" id="__nav_5_7_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_7">
<span class="md-nav__icon md-icon"></span>
路由
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../route/geoip/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 13c.7 0 1.37.13 2 .35V9l-6-6H5c-1.11 0-2 .89-2 2v14a2 2 0 0 0 2 2h8.35c-.22-.63-.35-1.3-.35-2 0-3.31 2.69-6 6-6m-5-8.5 5.5 5.5H14zM20.41 19l2.13 2.12-1.42 1.42L19 20.41l-2.12 2.13-1.41-1.42L17.59 19l-2.12-2.12 1.41-1.41L19 17.59l2.12-2.12 1.42 1.41z"/></svg>
<span class="md-ellipsis">
GeoIP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../route/geosite/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 13c.7 0 1.37.13 2 .35V9l-6-6H5c-1.11 0-2 .89-2 2v14a2 2 0 0 0 2 2h8.35c-.22-.63-.35-1.3-.35-2 0-3.31 2.69-6 6-6m-5-8.5 5.5 5.5H14zM20.41 19l2.13 2.12-1.42 1.42L19 20.41l-2.12 2.13-1.41-1.42L17.59 19l-2.12-2.12 1.41-1.41L19 17.59l2.12-2.12 1.42 1.41z"/></svg>
<span class="md-ellipsis">
Geosite
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../route/rule/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
路由规则
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../route/rule_action/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
规则动作
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../route/sniff/" class="md-nav__link">
<span class="md-ellipsis">
协议探测
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_8" >
<div class="md-nav__link md-nav__container">
<a href="../../rule-set/" class="md-nav__link ">
<span class="md-ellipsis">
规则集
</span>
</a>
<label class="md-nav__link " for="__nav_5_8" id="__nav_5_8_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_8_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_8">
<span class="md-nav__icon md-icon"></span>
规则集
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../rule-set/source-format/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
源文件格式
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../rule-set/headless-rule/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
无头规则
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../rule-set/adguard/" class="md-nav__link">
<span class="md-ellipsis">
AdGuard DNS Filer
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_9" >
<div class="md-nav__link md-nav__container">
<a href="../../experimental/" class="md-nav__link ">
<span class="md-ellipsis">
实验性
</span>
</a>
<label class="md-nav__link " for="__nav_5_9" id="__nav_5_9_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_9_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_9">
<span class="md-nav__icon md-icon"></span>
实验性
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../experimental/cache-file/" class="md-nav__link">
<span class="md-ellipsis">
缓存文件
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../experimental/clash-api/" class="md-nav__link">
<span class="md-ellipsis">
Clash API
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../experimental/v2ray-api/" class="md-nav__link">
<span class="md-ellipsis">
V2Ray API
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_10" >
<label class="md-nav__link" for="__nav_5_10" id="__nav_5_10_label" tabindex="">
<span class="md-ellipsis">
通用
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_10_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_10">
<span class="md-nav__icon md-icon"></span>
通用
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../shared/listen/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
监听字段
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/dial/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
拨号字段
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/tls/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
TLS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/http-client/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
HTTP Client
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/http2/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
HTTP2 Fields
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/quic/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
QUIC Fields
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_10_7" >
<div class="md-nav__link md-nav__container">
<a href="../../shared/certificate-provider/" class="md-nav__link ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
证书提供者
</span>
</a>
<label class="md-nav__link " for="__nav_5_10_7" id="__nav_5_10_7_label" tabindex="0">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_5_10_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_10_7">
<span class="md-nav__icon md-icon"></span>
证书提供者
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../shared/certificate-provider/acme/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
ACME
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/certificate-provider/tailscale/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Tailscale
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/certificate-provider/cloudflare-origin-ca/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Cloudflare Origin CA
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../shared/dns01_challenge/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
DNS01 验证字段
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/pre-match/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Pre-match
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/multiplex/" class="md-nav__link">
<span class="md-ellipsis">
多路复用
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/v2ray-transport/" class="md-nav__link">
<span class="md-ellipsis">
V2Ray 传输层
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/udp-over-tcp/" class="md-nav__link">
<span class="md-ellipsis">
UDP over TCP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/udp-nat/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
UDP NAT 字段
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/tcp-brutal/" class="md-nav__link">
<span class="md-ellipsis">
TCP Brutal
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/wifi-state/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Wi-Fi 状态
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../shared/neighbor/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 2c-1.11 0-2 .89-2 2v3c0 1.11.89 2 2 2h1v2H2v2h4v2H5c-1.11 0-2 .89-2 2v3c0 1.11.89 2 2 2h4c1.11 0 2-.89 2-2v-3c0-1.11-.89-2-2-2H8v-2h8v2h-1c-1.11 0-2 .89-2 2v3c0 1.11.89 2 2 2h4c1.11 0 2-.89 2-2v-3c0-1.11-.89-2-2-2h-1v-2h4v-2h-9V9h1c1.11 0 2-.89 2-2V4c0-1.11-.89-2-2-2zm0 2h4v3h-4zM5 17h4v3H5zm10 0h4v3h-4z"/></svg>
<span class="md-ellipsis">
Neighbor Resolution
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_11" >
<div class="md-nav__link md-nav__container">
<a href="../../network-namespace/" class="md-nav__link ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
网络命名空间
</span>
</a>
<label class="md-nav__link " for="__nav_5_11" id="__nav_5_11_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_11_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_11">
<span class="md-nav__icon md-icon"></span>
网络命名空间
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../network-namespace/default/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Default
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../network-namespace/unshare/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Unshare
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_12" checked>
<div class="md-nav__link md-nav__container">
<a href="../" class="md-nav__link ">
<span class="md-ellipsis">
端点
</span>
</a>
<label class="md-nav__link " for="__nav_5_12" id="__nav_5_12_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_12_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5_12">
<span class="md-nav__icon md-icon"></span>
端点
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../wireguard/" class="md-nav__link">
<span class="md-ellipsis">
WireGuard
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../tailscale/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Tailscale
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../openconnect/" class="md-nav__link">
<span class="md-ellipsis">
OpenConnect Client
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--active">
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc">
<span class="md-ellipsis">
OpenVPN Client
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
<span class="md-ellipsis">
OpenVPN Client
</span>
</a>
<nav class="md-nav md-nav--secondary" aria-label="目录">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
目录
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#结构" class="md-nav__link">
<span class="md-ellipsis">
结构
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#字段" class="md-nav__link">
<span class="md-ellipsis">
字段
</span>
</a>
<nav class="md-nav" aria-label="字段">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#mode" class="md-nav__link">
<span class="md-ellipsis">
mode
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#server" class="md-nav__link">
<span class="md-ellipsis">
server
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#server_port" class="md-nav__link">
<span class="md-ellipsis">
server_port
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#servers" class="md-nav__link">
<span class="md-ellipsis">
servers
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#serversserver" class="md-nav__link">
<span class="md-ellipsis">
servers.server
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#serversserver_port" class="md-nav__link">
<span class="md-ellipsis">
servers.server_port
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#serversnetwork" class="md-nav__link">
<span class="md-ellipsis">
servers.network
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#remote_random" class="md-nav__link">
<span class="md-ellipsis">
remote_random
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#network" class="md-nav__link">
<span class="md-ellipsis">
network
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#address" class="md-nav__link">
<span class="md-ellipsis">
address
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#peer_address" class="md-nav__link">
<span class="md-ellipsis">
peer_address
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#peer_address_ipv6" class="md-nav__link">
<span class="md-ellipsis">
peer_address_ipv6
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#topology" class="md-nav__link">
<span class="md-ellipsis">
topology
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#username" class="md-nav__link">
<span class="md-ellipsis">
username
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#password" class="md-nav__link">
<span class="md-ellipsis">
password
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#auth_retry" class="md-nav__link">
<span class="md-ellipsis">
auth_retry
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#static_challenge" class="md-nav__link">
<span class="md-ellipsis">
static_challenge
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#static_challenge_echo" class="md-nav__link">
<span class="md-ellipsis">
static_challenge_echo
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#static_key" class="md-nav__link">
<span class="md-ellipsis">
static_key
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#static_key_path" class="md-nav__link">
<span class="md-ellipsis">
static_key_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#key_direction" class="md-nav__link">
<span class="md-ellipsis">
key_direction
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tls" class="md-nav__link">
<span class="md-ellipsis">
tls
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsserver_name" class="md-nav__link">
<span class="md-ellipsis">
tls.server_name
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsserver_name_type" class="md-nav__link">
<span class="md-ellipsis">
tls.server_name_type
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscertificate" class="md-nav__link">
<span class="md-ellipsis">
tls.certificate
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscertificate_path" class="md-nav__link">
<span class="md-ellipsis">
tls.certificate_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsclient_certificate" class="md-nav__link">
<span class="md-ellipsis">
tls.client_certificate
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsclient_certificate_path" class="md-nav__link">
<span class="md-ellipsis">
tls.client_certificate_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsclient_key" class="md-nav__link">
<span class="md-ellipsis">
tls.client_key
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsclient_key_path" class="md-nav__link">
<span class="md-ellipsis">
tls.client_key_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlspeer_fingerprint" class="md-nav__link">
<span class="md-ellipsis">
tls.peer_fingerprint
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscrl_path" class="md-nav__link">
<span class="md-ellipsis">
tls.crl_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsremote_certificate_ku" class="md-nav__link">
<span class="md-ellipsis">
tls.remote_certificate_ku
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsremote_certificate_eku" class="md-nav__link">
<span class="md-ellipsis">
tls.remote_certificate_eku
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsremote_certificate_tls" class="md-nav__link">
<span class="md-ellipsis">
tls.remote_certificate_tls
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscertificate_profile" class="md-nav__link">
<span class="md-ellipsis">
tls.certificate_profile
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsns_certificate_type" class="md-nav__link">
<span class="md-ellipsis">
tls.ns_certificate_type
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsversion_min" class="md-nav__link">
<span class="md-ellipsis">
tls.version_min
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsversion_max" class="md-nav__link">
<span class="md-ellipsis">
tls.version_max
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscipher" class="md-nav__link">
<span class="md-ellipsis">
tls.cipher
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsgroups" class="md-nav__link">
<span class="md-ellipsis">
tls.groups
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wrap" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wraptype" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap.type
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wrapkey" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap.key
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wrapkey_path" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap.key_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wrapdirection" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap.direction
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#cipher" class="md-nav__link">
<span class="md-ellipsis">
cipher
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#data_ciphers" class="md-nav__link">
<span class="md-ellipsis">
data_ciphers
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#data_ciphers_fallback" class="md-nav__link">
<span class="md-ellipsis">
data_ciphers_fallback
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#auth" class="md-nav__link">
<span class="md-ellipsis">
auth
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#mss_fix" class="md-nav__link">
<span class="md-ellipsis">
mss_fix
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#mss_fix_disabled" class="md-nav__link">
<span class="md-ellipsis">
mss_fix_disabled
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#mss_fix_mode" class="md-nav__link">
<span class="md-ellipsis">
mss_fix_mode
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#fragment" class="md-nav__link">
<span class="md-ellipsis">
fragment
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#replay_window" class="md-nav__link">
<span class="md-ellipsis">
replay_window
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#replay_window_time" class="md-nav__link">
<span class="md-ellipsis">
replay_window_time
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#compression" class="md-nav__link">
<span class="md-ellipsis">
compression
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#compression_lzo" class="md-nav__link">
<span class="md-ellipsis">
compression_lzo
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#allow_compression" class="md-nav__link">
<span class="md-ellipsis">
allow_compression
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#route_no_pull" class="md-nav__link">
<span class="md-ellipsis">
route_no_pull
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#pull_filters" class="md-nav__link">
<span class="md-ellipsis">
pull_filters
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#pull_filtersaction" class="md-nav__link">
<span class="md-ellipsis">
pull_filters.action
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#pull_filterstext" class="md-nav__link">
<span class="md-ellipsis">
pull_filters.text
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#routes" class="md-nav__link">
<span class="md-ellipsis">
routes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#route_gateway" class="md-nav__link">
<span class="md-ellipsis">
route_gateway
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#route_metric" class="md-nav__link">
<span class="md-ellipsis">
route_metric
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#redirect_gateway" class="md-nav__link">
<span class="md-ellipsis">
redirect_gateway
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#redirect_gateway_flags" class="md-nav__link">
<span class="md-ellipsis">
redirect_gateway_flags
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#redirect_private" class="md-nav__link">
<span class="md-ellipsis">
redirect_private
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#block_ipv6" class="md-nav__link">
<span class="md-ellipsis">
block_ipv6
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#ping_interval" class="md-nav__link">
<span class="md-ellipsis">
ping_interval
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#ping_restart" class="md-nav__link">
<span class="md-ellipsis">
ping_restart
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#ping_restart_disabled" class="md-nav__link">
<span class="md-ellipsis">
ping_restart_disabled
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#renegotiate_interval" class="md-nav__link">
<span class="md-ellipsis">
renegotiate_interval
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#renegotiate_disabled" class="md-nav__link">
<span class="md-ellipsis">
renegotiate_disabled
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#renegotiate_bytes" class="md-nav__link">
<span class="md-ellipsis">
renegotiate_bytes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#renegotiate_packets" class="md-nav__link">
<span class="md-ellipsis">
renegotiate_packets
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tls_timeout" class="md-nav__link">
<span class="md-ellipsis">
tls_timeout
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#handshake_window" class="md-nav__link">
<span class="md-ellipsis">
handshake_window
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#explicit_exit_notify" class="md-nav__link">
<span class="md-ellipsis">
explicit_exit_notify
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#system" class="md-nav__link">
<span class="md-ellipsis">
system
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#name" class="md-nav__link">
<span class="md-ellipsis">
name
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#mtu" class="md-nav__link">
<span class="md-ellipsis">
mtu
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#udp-nat-字段" class="md-nav__link">
<span class="md-ellipsis">
UDP NAT 字段
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#拨号字段" class="md-nav__link">
<span class="md-ellipsis">
拨号字段
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#交互式认证" class="md-nav__link">
<span class="md-ellipsis">
交互式认证
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../openvpn-server/" class="md-nav__link">
<span class="md-ellipsis">
OpenVPN Server
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_13" >
<div class="md-nav__link md-nav__container">
<a href="../../inbound/" class="md-nav__link ">
<span class="md-ellipsis">
入站
</span>
</a>
<label class="md-nav__link " for="__nav_5_13" id="__nav_5_13_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_13_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_13">
<span class="md-nav__icon md-icon"></span>
入站
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../inbound/direct/" class="md-nav__link">
<span class="md-ellipsis">
Direct
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/mixed/" class="md-nav__link">
<span class="md-ellipsis">
Mixed
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/socks/" class="md-nav__link">
<span class="md-ellipsis">
SOCKS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/http/" class="md-nav__link">
<span class="md-ellipsis">
HTTP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/shadowsocks/" class="md-nav__link">
<span class="md-ellipsis">
Shadowsocks
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/vmess/" class="md-nav__link">
<span class="md-ellipsis">
VMess
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/trojan/" class="md-nav__link">
<span class="md-ellipsis">
Trojan
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/naive/" class="md-nav__link">
<span class="md-ellipsis">
Naive
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/hysteria/" class="md-nav__link">
<span class="md-ellipsis">
Hysteria
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/shadowtls/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
ShadowTLS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/vless/" class="md-nav__link">
<span class="md-ellipsis">
VLESS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/tuic/" class="md-nav__link">
<span class="md-ellipsis">
TUIC
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/hysteria2/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m23 12-2.44-2.78.34-3.68-3.61-.82-1.89-3.18L12 3 8.6 1.54 6.71 4.72l-3.61.81.34 3.68L1 12l2.44 2.78-.34 3.69 3.61.82 1.89 3.18L12 21l3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-10 5h-2v-2h2zm0-4h-2V7h2z"/></svg>
<span class="md-ellipsis">
Hysteria2
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/anytls/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
AnyTLS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/snell/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Snell
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/tun/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Tun
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/redirect/" class="md-nav__link">
<span class="md-ellipsis">
Redirect
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/tproxy/" class="md-nav__link">
<span class="md-ellipsis">
TProxy
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../inbound/cloudflared/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Cloudflared
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_14" >
<div class="md-nav__link md-nav__container">
<a href="../../outbound/" class="md-nav__link ">
<span class="md-ellipsis">
出站
</span>
</a>
<label class="md-nav__link " for="__nav_5_14" id="__nav_5_14_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_14_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_14">
<span class="md-nav__icon md-icon"></span>
出站
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../outbound/direct/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m23 12-2.44-2.78.34-3.68-3.61-.82-1.89-3.18L12 3 8.6 1.54 6.71 4.72l-3.61.81.34 3.68L1 12l2.44 2.78-.34 3.69 3.61.82 1.89 3.18L12 21l3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-10 5h-2v-2h2zm0-4h-2V7h2z"/></svg>
<span class="md-ellipsis">
Direct
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/bridge/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Bridge
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/block/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15 13h1.5v2.82l2.44 1.41-.75 1.3L15 16.69zm8 3c0 3.87-3.13 7-7 7-1.91 0-3.64-.76-4.9-2H8c-1.1 0-2-.9-2-2V7h12v2.29c2.89.86 5 3.54 5 6.71m-7-5c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5m3-7v2H5V4h3.5l1-1h5l1 1z"/></svg>
<span class="md-ellipsis">
Block
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/socks/" class="md-nav__link">
<span class="md-ellipsis">
SOCKS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/http/" class="md-nav__link">
<span class="md-ellipsis">
HTTP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/shadowsocks/" class="md-nav__link">
<span class="md-ellipsis">
Shadowsocks
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/vmess/" class="md-nav__link">
<span class="md-ellipsis">
VMess
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/trojan/" class="md-nav__link">
<span class="md-ellipsis">
Trojan
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/naive/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Naive
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/wireguard/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15 13h1.5v2.82l2.44 1.41-.75 1.3L15 16.69zm8 3c0 3.87-3.13 7-7 7-1.91 0-3.64-.76-4.9-2H8c-1.1 0-2-.9-2-2V7h12v2.29c2.89.86 5 3.54 5 6.71m-7-5c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5m3-7v2H5V4h3.5l1-1h5l1 1z"/></svg>
<span class="md-ellipsis">
WireGuard
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/hysteria/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Hysteria
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/shadowtls/" class="md-nav__link">
<span class="md-ellipsis">
ShadowTLS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/vless/" class="md-nav__link">
<span class="md-ellipsis">
VLESS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/tuic/" class="md-nav__link">
<span class="md-ellipsis">
TUIC
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/hysteria2/" class="md-nav__link">
<span class="md-ellipsis">
Hysteria2
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/anytls/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
AnyTLS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/snell/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Snell
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/tor/" class="md-nav__link">
<span class="md-ellipsis">
Tor
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/ssh/" class="md-nav__link">
<span class="md-ellipsis">
SSH
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/dns/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15 13h1.5v2.82l2.44 1.41-.75 1.3L15 16.69zm8 3c0 3.87-3.13 7-7 7-1.91 0-3.64-.76-4.9-2H8c-1.1 0-2-.9-2-2V7h12v2.29c2.89.86 5 3.54 5 6.71m-7-5c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5m3-7v2H5V4h3.5l1-1h5l1 1z"/></svg>
<span class="md-ellipsis">
DNS
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/selector/" class="md-nav__link">
<span class="md-ellipsis">
Selector
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../outbound/urltest/" class="md-nav__link">
<span class="md-ellipsis">
URLTest
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_15" >
<div class="md-nav__link md-nav__container">
<a href="../../service/" class="md-nav__link ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Service
</span>
</a>
<label class="md-nav__link " for="__nav_5_15" id="__nav_5_15_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_15_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_15">
<span class="md-nav__icon md-icon"></span>
Service
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../service/api/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
sing-box API
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../service/derp/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
DERP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../service/resolved/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Resolved
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../service/ssm-api/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
SSM API
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../service/ccm/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
CCM
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../service/ocm/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
OCM
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../service/hysteria-realm/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
Hysteria Realm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../service/usbip-server/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
USB/IP Server
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../service/usbip-client/" class="md-nav__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2zM8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15zm5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12zm7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1"/></svg>
<span class="md-ellipsis">
USB/IP Client
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary" aria-label="目录">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
目录
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#结构" class="md-nav__link">
<span class="md-ellipsis">
结构
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#字段" class="md-nav__link">
<span class="md-ellipsis">
字段
</span>
</a>
<nav class="md-nav" aria-label="字段">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#mode" class="md-nav__link">
<span class="md-ellipsis">
mode
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#server" class="md-nav__link">
<span class="md-ellipsis">
server
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#server_port" class="md-nav__link">
<span class="md-ellipsis">
server_port
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#servers" class="md-nav__link">
<span class="md-ellipsis">
servers
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#serversserver" class="md-nav__link">
<span class="md-ellipsis">
servers.server
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#serversserver_port" class="md-nav__link">
<span class="md-ellipsis">
servers.server_port
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#serversnetwork" class="md-nav__link">
<span class="md-ellipsis">
servers.network
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#remote_random" class="md-nav__link">
<span class="md-ellipsis">
remote_random
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#network" class="md-nav__link">
<span class="md-ellipsis">
network
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#address" class="md-nav__link">
<span class="md-ellipsis">
address
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#peer_address" class="md-nav__link">
<span class="md-ellipsis">
peer_address
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#peer_address_ipv6" class="md-nav__link">
<span class="md-ellipsis">
peer_address_ipv6
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#topology" class="md-nav__link">
<span class="md-ellipsis">
topology
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#username" class="md-nav__link">
<span class="md-ellipsis">
username
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#password" class="md-nav__link">
<span class="md-ellipsis">
password
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#auth_retry" class="md-nav__link">
<span class="md-ellipsis">
auth_retry
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#static_challenge" class="md-nav__link">
<span class="md-ellipsis">
static_challenge
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#static_challenge_echo" class="md-nav__link">
<span class="md-ellipsis">
static_challenge_echo
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#static_key" class="md-nav__link">
<span class="md-ellipsis">
static_key
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#static_key_path" class="md-nav__link">
<span class="md-ellipsis">
static_key_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#key_direction" class="md-nav__link">
<span class="md-ellipsis">
key_direction
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tls" class="md-nav__link">
<span class="md-ellipsis">
tls
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsserver_name" class="md-nav__link">
<span class="md-ellipsis">
tls.server_name
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsserver_name_type" class="md-nav__link">
<span class="md-ellipsis">
tls.server_name_type
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscertificate" class="md-nav__link">
<span class="md-ellipsis">
tls.certificate
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscertificate_path" class="md-nav__link">
<span class="md-ellipsis">
tls.certificate_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsclient_certificate" class="md-nav__link">
<span class="md-ellipsis">
tls.client_certificate
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsclient_certificate_path" class="md-nav__link">
<span class="md-ellipsis">
tls.client_certificate_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsclient_key" class="md-nav__link">
<span class="md-ellipsis">
tls.client_key
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsclient_key_path" class="md-nav__link">
<span class="md-ellipsis">
tls.client_key_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlspeer_fingerprint" class="md-nav__link">
<span class="md-ellipsis">
tls.peer_fingerprint
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscrl_path" class="md-nav__link">
<span class="md-ellipsis">
tls.crl_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsremote_certificate_ku" class="md-nav__link">
<span class="md-ellipsis">
tls.remote_certificate_ku
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsremote_certificate_eku" class="md-nav__link">
<span class="md-ellipsis">
tls.remote_certificate_eku
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsremote_certificate_tls" class="md-nav__link">
<span class="md-ellipsis">
tls.remote_certificate_tls
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscertificate_profile" class="md-nav__link">
<span class="md-ellipsis">
tls.certificate_profile
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsns_certificate_type" class="md-nav__link">
<span class="md-ellipsis">
tls.ns_certificate_type
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsversion_min" class="md-nav__link">
<span class="md-ellipsis">
tls.version_min
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsversion_max" class="md-nav__link">
<span class="md-ellipsis">
tls.version_max
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscipher" class="md-nav__link">
<span class="md-ellipsis">
tls.cipher
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlsgroups" class="md-nav__link">
<span class="md-ellipsis">
tls.groups
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wrap" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wraptype" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap.type
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wrapkey" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap.key
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wrapkey_path" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap.key_path
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tlscontrol_wrapdirection" class="md-nav__link">
<span class="md-ellipsis">
tls.control_wrap.direction
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#cipher" class="md-nav__link">
<span class="md-ellipsis">
cipher
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#data_ciphers" class="md-nav__link">
<span class="md-ellipsis">
data_ciphers
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#data_ciphers_fallback" class="md-nav__link">
<span class="md-ellipsis">
data_ciphers_fallback
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#auth" class="md-nav__link">
<span class="md-ellipsis">
auth
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#mss_fix" class="md-nav__link">
<span class="md-ellipsis">
mss_fix
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#mss_fix_disabled" class="md-nav__link">
<span class="md-ellipsis">
mss_fix_disabled
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#mss_fix_mode" class="md-nav__link">
<span class="md-ellipsis">
mss_fix_mode
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#fragment" class="md-nav__link">
<span class="md-ellipsis">
fragment
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#replay_window" class="md-nav__link">
<span class="md-ellipsis">
replay_window
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#replay_window_time" class="md-nav__link">
<span class="md-ellipsis">
replay_window_time
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#compression" class="md-nav__link">
<span class="md-ellipsis">
compression
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#compression_lzo" class="md-nav__link">
<span class="md-ellipsis">
compression_lzo
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#allow_compression" class="md-nav__link">
<span class="md-ellipsis">
allow_compression
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#route_no_pull" class="md-nav__link">
<span class="md-ellipsis">
route_no_pull
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#pull_filters" class="md-nav__link">
<span class="md-ellipsis">
pull_filters
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#pull_filtersaction" class="md-nav__link">
<span class="md-ellipsis">
pull_filters.action
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#pull_filterstext" class="md-nav__link">
<span class="md-ellipsis">
pull_filters.text
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#routes" class="md-nav__link">
<span class="md-ellipsis">
routes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#route_gateway" class="md-nav__link">
<span class="md-ellipsis">
route_gateway
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#route_metric" class="md-nav__link">
<span class="md-ellipsis">
route_metric
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#redirect_gateway" class="md-nav__link">
<span class="md-ellipsis">
redirect_gateway
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#redirect_gateway_flags" class="md-nav__link">
<span class="md-ellipsis">
redirect_gateway_flags
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#redirect_private" class="md-nav__link">
<span class="md-ellipsis">
redirect_private
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#block_ipv6" class="md-nav__link">
<span class="md-ellipsis">
block_ipv6
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#ping_interval" class="md-nav__link">
<span class="md-ellipsis">
ping_interval
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#ping_restart" class="md-nav__link">
<span class="md-ellipsis">
ping_restart
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#ping_restart_disabled" class="md-nav__link">
<span class="md-ellipsis">
ping_restart_disabled
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#renegotiate_interval" class="md-nav__link">
<span class="md-ellipsis">
renegotiate_interval
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#renegotiate_disabled" class="md-nav__link">
<span class="md-ellipsis">
renegotiate_disabled
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#renegotiate_bytes" class="md-nav__link">
<span class="md-ellipsis">
renegotiate_bytes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#renegotiate_packets" class="md-nav__link">
<span class="md-ellipsis">
renegotiate_packets
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#tls_timeout" class="md-nav__link">
<span class="md-ellipsis">
tls_timeout
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#handshake_window" class="md-nav__link">
<span class="md-ellipsis">
handshake_window
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#explicit_exit_notify" class="md-nav__link">
<span class="md-ellipsis">
explicit_exit_notify
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#system" class="md-nav__link">
<span class="md-ellipsis">
system
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#name" class="md-nav__link">
<span class="md-ellipsis">
name
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#mtu" class="md-nav__link">
<span class="md-ellipsis">
mtu
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#udp-nat-字段" class="md-nav__link">
<span class="md-ellipsis">
UDP NAT 字段
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#拨号字段" class="md-nav__link">
<span class="md-ellipsis">
拨号字段
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#交互式认证" class="md-nav__link">
<span class="md-ellipsis">
交互式认证
</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content" data-md-component="content">
<article class="md-content__inner md-typeset">
<h1 id="openvpn-客户端">OpenVPN 客户端</h1>
<div class="admonition question">
<p class="admonition-title">自 sing-box 1.14.0 起</p>
</div>
<h2 id="结构">结构</h2>
<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="p">{</span>
<a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class="w"> </span><span class="nt">&quot;type&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;openvpn-client&quot;</span><span class="p">,</span>
<a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a><span class="w"> </span><span class="nt">&quot;tag&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;ovpn-client&quot;</span><span class="p">,</span>
<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>
<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a><span class="w"> </span><span class="nt">&quot;mode&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;tls&quot;</span><span class="p">,</span>
<a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a><span class="w"> </span><span class="nt">&quot;server&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;127.0.0.1&quot;</span><span class="p">,</span>
<a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a><span class="w"> </span><span class="nt">&quot;server_port&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">1194</span><span class="p">,</span>
<a id="__codelineno-0-8" name="__codelineno-0-8" href="#__codelineno-0-8"></a><span class="w"> </span><span class="nt">&quot;servers&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[</span>
<a id="__codelineno-0-9" name="__codelineno-0-9" href="#__codelineno-0-9"></a><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-0-10" name="__codelineno-0-10" href="#__codelineno-0-10"></a><span class="w"> </span><span class="nt">&quot;server&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;127.0.0.1&quot;</span><span class="p">,</span>
<a id="__codelineno-0-11" name="__codelineno-0-11" href="#__codelineno-0-11"></a><span class="w"> </span><span class="nt">&quot;server_port&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">1194</span><span class="p">,</span>
<a id="__codelineno-0-12" name="__codelineno-0-12" href="#__codelineno-0-12"></a><span class="w"> </span><span class="nt">&quot;network&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;udp&quot;</span>
<a id="__codelineno-0-13" name="__codelineno-0-13" href="#__codelineno-0-13"></a><span class="w"> </span><span class="p">}</span>
<a id="__codelineno-0-14" name="__codelineno-0-14" href="#__codelineno-0-14"></a><span class="w"> </span><span class="p">],</span>
<a id="__codelineno-0-15" name="__codelineno-0-15" href="#__codelineno-0-15"></a><span class="w"> </span><span class="nt">&quot;remote_random&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-16" name="__codelineno-0-16" href="#__codelineno-0-16"></a><span class="w"> </span><span class="nt">&quot;network&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;udp&quot;</span><span class="p">,</span>
<a id="__codelineno-0-17" name="__codelineno-0-17" href="#__codelineno-0-17"></a><span class="w"> </span><span class="nt">&quot;address&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-18" name="__codelineno-0-18" href="#__codelineno-0-18"></a><span class="w"> </span><span class="nt">&quot;peer_address&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-19" name="__codelineno-0-19" href="#__codelineno-0-19"></a><span class="w"> </span><span class="nt">&quot;peer_address_ipv6&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-20" name="__codelineno-0-20" href="#__codelineno-0-20"></a><span class="w"> </span><span class="nt">&quot;topology&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-21" name="__codelineno-0-21" href="#__codelineno-0-21"></a><span class="w"> </span><span class="nt">&quot;username&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-22" name="__codelineno-0-22" href="#__codelineno-0-22"></a><span class="w"> </span><span class="nt">&quot;password&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-23" name="__codelineno-0-23" href="#__codelineno-0-23"></a><span class="w"> </span><span class="nt">&quot;auth_retry&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;none&quot;</span><span class="p">,</span>
<a id="__codelineno-0-24" name="__codelineno-0-24" href="#__codelineno-0-24"></a><span class="w"> </span><span class="nt">&quot;static_challenge&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-25" name="__codelineno-0-25" href="#__codelineno-0-25"></a><span class="w"> </span><span class="nt">&quot;static_challenge_echo&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-26" name="__codelineno-0-26" href="#__codelineno-0-26"></a><span class="w"> </span><span class="nt">&quot;static_key&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-27" name="__codelineno-0-27" href="#__codelineno-0-27"></a><span class="w"> </span><span class="nt">&quot;static_key_path&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-28" name="__codelineno-0-28" href="#__codelineno-0-28"></a><span class="w"> </span><span class="nt">&quot;key_direction&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-29" name="__codelineno-0-29" href="#__codelineno-0-29"></a><span class="w"> </span><span class="nt">&quot;tls&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-0-30" name="__codelineno-0-30" href="#__codelineno-0-30"></a><span class="w"> </span><span class="nt">&quot;server_name&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-31" name="__codelineno-0-31" href="#__codelineno-0-31"></a><span class="w"> </span><span class="nt">&quot;server_name_type&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;name&quot;</span><span class="p">,</span>
<a id="__codelineno-0-32" name="__codelineno-0-32" href="#__codelineno-0-32"></a><span class="w"> </span><span class="nt">&quot;certificate&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-33" name="__codelineno-0-33" href="#__codelineno-0-33"></a><span class="w"> </span><span class="nt">&quot;certificate_path&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-34" name="__codelineno-0-34" href="#__codelineno-0-34"></a><span class="w"> </span><span class="nt">&quot;client_certificate&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-35" name="__codelineno-0-35" href="#__codelineno-0-35"></a><span class="w"> </span><span class="nt">&quot;client_certificate_path&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-36" name="__codelineno-0-36" href="#__codelineno-0-36"></a><span class="w"> </span><span class="nt">&quot;client_key&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-37" name="__codelineno-0-37" href="#__codelineno-0-37"></a><span class="w"> </span><span class="nt">&quot;client_key_path&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-38" name="__codelineno-0-38" href="#__codelineno-0-38"></a><span class="w"> </span><span class="nt">&quot;peer_fingerprint&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-39" name="__codelineno-0-39" href="#__codelineno-0-39"></a><span class="w"> </span><span class="nt">&quot;crl_path&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-40" name="__codelineno-0-40" href="#__codelineno-0-40"></a><span class="w"> </span><span class="nt">&quot;remote_certificate_ku&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-41" name="__codelineno-0-41" href="#__codelineno-0-41"></a><span class="w"> </span><span class="nt">&quot;remote_certificate_eku&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-42" name="__codelineno-0-42" href="#__codelineno-0-42"></a><span class="w"> </span><span class="nt">&quot;remote_certificate_tls&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-43" name="__codelineno-0-43" href="#__codelineno-0-43"></a><span class="w"> </span><span class="nt">&quot;certificate_profile&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-44" name="__codelineno-0-44" href="#__codelineno-0-44"></a><span class="w"> </span><span class="nt">&quot;ns_certificate_type&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-45" name="__codelineno-0-45" href="#__codelineno-0-45"></a><span class="w"> </span><span class="nt">&quot;version_min&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;1.2&quot;</span><span class="p">,</span>
<a id="__codelineno-0-46" name="__codelineno-0-46" href="#__codelineno-0-46"></a><span class="w"> </span><span class="nt">&quot;version_max&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-47" name="__codelineno-0-47" href="#__codelineno-0-47"></a><span class="w"> </span><span class="nt">&quot;cipher&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-48" name="__codelineno-0-48" href="#__codelineno-0-48"></a><span class="w"> </span><span class="nt">&quot;groups&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-49" name="__codelineno-0-49" href="#__codelineno-0-49"></a><span class="w"> </span><span class="nt">&quot;control_wrap&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-0-50" name="__codelineno-0-50" href="#__codelineno-0-50"></a><span class="w"> </span><span class="nt">&quot;type&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-51" name="__codelineno-0-51" href="#__codelineno-0-51"></a><span class="w"> </span><span class="nt">&quot;key&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-52" name="__codelineno-0-52" href="#__codelineno-0-52"></a><span class="w"> </span><span class="nt">&quot;key_path&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-53" name="__codelineno-0-53" href="#__codelineno-0-53"></a><span class="w"> </span><span class="nt">&quot;direction&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span>
<a id="__codelineno-0-54" name="__codelineno-0-54" href="#__codelineno-0-54"></a><span class="w"> </span><span class="p">}</span>
<a id="__codelineno-0-55" name="__codelineno-0-55" href="#__codelineno-0-55"></a><span class="w"> </span><span class="p">},</span>
<a id="__codelineno-0-56" name="__codelineno-0-56" href="#__codelineno-0-56"></a><span class="w"> </span><span class="nt">&quot;cipher&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-57" name="__codelineno-0-57" href="#__codelineno-0-57"></a><span class="w"> </span><span class="nt">&quot;data_ciphers&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-58" name="__codelineno-0-58" href="#__codelineno-0-58"></a><span class="w"> </span><span class="nt">&quot;data_ciphers_fallback&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-59" name="__codelineno-0-59" href="#__codelineno-0-59"></a><span class="w"> </span><span class="nt">&quot;auth&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-60" name="__codelineno-0-60" href="#__codelineno-0-60"></a><span class="w"> </span><span class="nt">&quot;mss_fix&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span>
<a id="__codelineno-0-61" name="__codelineno-0-61" href="#__codelineno-0-61"></a><span class="w"> </span><span class="nt">&quot;mss_fix_disabled&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-62" name="__codelineno-0-62" href="#__codelineno-0-62"></a><span class="w"> </span><span class="nt">&quot;mss_fix_mode&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-63" name="__codelineno-0-63" href="#__codelineno-0-63"></a><span class="w"> </span><span class="nt">&quot;fragment&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span>
<a id="__codelineno-0-64" name="__codelineno-0-64" href="#__codelineno-0-64"></a><span class="w"> </span><span class="nt">&quot;replay_window&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span>
<a id="__codelineno-0-65" name="__codelineno-0-65" href="#__codelineno-0-65"></a><span class="w"> </span><span class="nt">&quot;replay_window_time&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-66" name="__codelineno-0-66" href="#__codelineno-0-66"></a><span class="w"> </span><span class="nt">&quot;compression&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-67" name="__codelineno-0-67" href="#__codelineno-0-67"></a><span class="w"> </span><span class="nt">&quot;compression_lzo&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-68" name="__codelineno-0-68" href="#__codelineno-0-68"></a><span class="w"> </span><span class="nt">&quot;allow_compression&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;no&quot;</span><span class="p">,</span>
<a id="__codelineno-0-69" name="__codelineno-0-69" href="#__codelineno-0-69"></a><span class="w"> </span><span class="nt">&quot;route_no_pull&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-70" name="__codelineno-0-70" href="#__codelineno-0-70"></a><span class="w"> </span><span class="nt">&quot;pull_filters&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[</span>
<a id="__codelineno-0-71" name="__codelineno-0-71" href="#__codelineno-0-71"></a><span class="w"> </span><span class="p">{</span>
<a id="__codelineno-0-72" name="__codelineno-0-72" href="#__codelineno-0-72"></a><span class="w"> </span><span class="nt">&quot;action&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;ignore&quot;</span><span class="p">,</span>
<a id="__codelineno-0-73" name="__codelineno-0-73" href="#__codelineno-0-73"></a><span class="w"> </span><span class="nt">&quot;text&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;route &quot;</span>
<a id="__codelineno-0-74" name="__codelineno-0-74" href="#__codelineno-0-74"></a><span class="w"> </span><span class="p">}</span>
<a id="__codelineno-0-75" name="__codelineno-0-75" href="#__codelineno-0-75"></a><span class="w"> </span><span class="p">],</span>
<a id="__codelineno-0-76" name="__codelineno-0-76" href="#__codelineno-0-76"></a><span class="w"> </span><span class="nt">&quot;routes&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-77" name="__codelineno-0-77" href="#__codelineno-0-77"></a><span class="w"> </span><span class="nt">&quot;route_gateway&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-78" name="__codelineno-0-78" href="#__codelineno-0-78"></a><span class="w"> </span><span class="nt">&quot;route_metric&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span>
<a id="__codelineno-0-79" name="__codelineno-0-79" href="#__codelineno-0-79"></a><span class="w"> </span><span class="nt">&quot;redirect_gateway&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-80" name="__codelineno-0-80" href="#__codelineno-0-80"></a><span class="w"> </span><span class="nt">&quot;redirect_gateway_flags&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span>
<a id="__codelineno-0-81" name="__codelineno-0-81" href="#__codelineno-0-81"></a><span class="w"> </span><span class="nt">&quot;redirect_private&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-82" name="__codelineno-0-82" href="#__codelineno-0-82"></a><span class="w"> </span><span class="nt">&quot;block_ipv6&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-83" name="__codelineno-0-83" href="#__codelineno-0-83"></a><span class="w"> </span><span class="nt">&quot;ping_interval&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-84" name="__codelineno-0-84" href="#__codelineno-0-84"></a><span class="w"> </span><span class="nt">&quot;ping_restart&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-85" name="__codelineno-0-85" href="#__codelineno-0-85"></a><span class="w"> </span><span class="nt">&quot;ping_restart_disabled&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-86" name="__codelineno-0-86" href="#__codelineno-0-86"></a><span class="w"> </span><span class="nt">&quot;renegotiate_interval&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-87" name="__codelineno-0-87" href="#__codelineno-0-87"></a><span class="w"> </span><span class="nt">&quot;renegotiate_disabled&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-88" name="__codelineno-0-88" href="#__codelineno-0-88"></a><span class="w"> </span><span class="nt">&quot;renegotiate_bytes&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span>
<a id="__codelineno-0-89" name="__codelineno-0-89" href="#__codelineno-0-89"></a><span class="w"> </span><span class="nt">&quot;renegotiate_packets&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span>
<a id="__codelineno-0-90" name="__codelineno-0-90" href="#__codelineno-0-90"></a><span class="w"> </span><span class="nt">&quot;tls_timeout&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-91" name="__codelineno-0-91" href="#__codelineno-0-91"></a><span class="w"> </span><span class="nt">&quot;handshake_window&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-92" name="__codelineno-0-92" href="#__codelineno-0-92"></a><span class="w"> </span><span class="nt">&quot;explicit_exit_notify&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span>
<a id="__codelineno-0-93" name="__codelineno-0-93" href="#__codelineno-0-93"></a><span class="w"> </span><span class="nt">&quot;system&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
<a id="__codelineno-0-94" name="__codelineno-0-94" href="#__codelineno-0-94"></a><span class="w"> </span><span class="nt">&quot;name&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;&quot;</span><span class="p">,</span>
<a id="__codelineno-0-95" name="__codelineno-0-95" href="#__codelineno-0-95"></a><span class="w"> </span><span class="nt">&quot;mtu&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">1500</span><span class="p">,</span>
<a id="__codelineno-0-96" name="__codelineno-0-96" href="#__codelineno-0-96"></a>
<a id="__codelineno-0-97" name="__codelineno-0-97" href="#__codelineno-0-97"></a><span class="w"> </span><span class="err">...</span><span class="w"> </span><span class="c1">// UDP NAT 字段</span>
<a id="__codelineno-0-98" name="__codelineno-0-98" href="#__codelineno-0-98"></a>
<a id="__codelineno-0-99" name="__codelineno-0-99" href="#__codelineno-0-99"></a><span class="w"> </span><span class="err">...</span><span class="w"> </span><span class="c1">// 拨号字段</span>
<a id="__codelineno-0-100" name="__codelineno-0-100" href="#__codelineno-0-100"></a><span class="p">}</span>
</code></pre></div>
<div class="admonition note">
<p>当内容只有一项时,可以忽略 JSON 数组 [] 标签。</p>
</div>
<h2 id="字段">字段</h2>
<h3 id="mode">mode</h3>
<p>OpenVPN 会话模式,可选值为 <code>tls</code><code>static_key</code></p>
<p>默认使用 <code>tls</code></p>
<p><code>static_key</code> 是已弃用的 OpenVPN 模式,不使用 TLS 控制通道且不提供前向保密。
为兼容无法修改的企业 VPN 服务器,此模式仍作为显式兼容选项保留。该模式不使用
<code>tls</code>、用户名/密码认证、拉取选项或 TLS 重协商选项。</p>
<h3 id="server">server</h3>
<p>OpenVPN 服务器地址。</p>
<p><code>server</code><code>servers</code> 之一必填。</p>
<p><code>servers</code> 冲突。</p>
<h3 id="server_port">server_port</h3>
<p>OpenVPN 服务器端口。</p>
<p>设置 <code>server</code> 时必填。</p>
<h3 id="servers">servers</h3>
<p>OpenVPN 服务器列表。</p>
<p>客户端按顺序尝试服务器,并在连接失败时尝试下一台服务器。</p>
<p><code>server</code><code>servers</code> 之一必填。</p>
<p><code>server</code> 冲突。</p>
<h3 id="serversserver">servers.server</h3>
<p><mark>必填</mark></p>
<p>OpenVPN 服务器地址。</p>
<h3 id="serversserver_port">servers.server_port</h3>
<p><mark>必填</mark></p>
<p>OpenVPN 服务器端口。</p>
<h3 id="serversnetwork">servers.network</h3>
<p>该服务器的 OpenVPN 传输网络,可选值为 <code>udp</code><code>tcp</code></p>
<p>默认使用顶层 <code>network</code></p>
<h3 id="remote_random">remote_random</h3>
<p>连接前随机排列 <code>servers</code> 顺序。</p>
<p>默认禁用。</p>
<h3 id="network">network</h3>
<p>默认 OpenVPN 传输网络,可选值为 <code>udp</code><code>tcp</code></p>
<p>默认使用 <code>udp</code></p>
<p>该值应用于 <code>server</code> 和未单独设置 <code>network</code><code>servers</code> 条目。</p>
<h3 id="address">address</h3>
<p>本地 IPv4 和 IPv6 隧道前缀。</p>
<p><code>static_key</code> 模式至少需要一个地址。在 TLS 模式下该字段可选,并可被服务器推送的地址替换。</p>
<h3 id="peer_address">peer_address</h3>
<p>IPv4 隧道对端地址及 VPN 网关。</p>
<p><code>static_key</code> 模式下配置 IPv4 <code>address</code> 时必填。</p>
<h3 id="peer_address_ipv6">peer_address_ipv6</h3>
<p>IPv6 隧道对端地址及 VPN 网关。</p>
<p><code>static_key</code> 模式下配置 IPv6 <code>address</code> 时必填。</p>
<h3 id="topology">topology</h3>
<p>隧道拓扑,可选值为 <code>net30</code><code>p2p</code><code>subnet</code></p>
<p>TLS 模式下为空时使用服务器推送的拓扑。</p>
<h3 id="username">username</h3>
<p>OpenVPN 用户名/密码认证的用户名。</p>
<p>仅在 TLS 模式下可用。</p>
<h3 id="password">password</h3>
<p>OpenVPN 用户名/密码认证的密码。</p>
<h3 id="auth_retry">auth_retry</h3>
<p>用户名/密码认证失败后的行为,可选值为 <code>none</code><code>nointeract</code><code>interact</code></p>
<p>默认使用 <code>none</code>,并将永久认证失败视为终止错误。</p>
<p><code>nointeract</code><code>interact</code> 允许重试认证。</p>
<h3 id="static_challenge">static_challenge</h3>
<p>请求认证响应时显示的静态质询文本。</p>
<h3 id="static_challenge_echo">static_challenge_echo</h3>
<p>以明文显示静态质询响应。</p>
<h3 id="static_key">static_key</h3>
<p>OpenVPN 静态密钥内容。</p>
<p><code>static_key</code> 模式下必填。</p>
<p><code>static_key_path</code> 冲突。</p>
<h3 id="static_key_path">static_key_path</h3>
<p>OpenVPN 静态密钥路径。</p>
<p><code>static_key</code> 模式下未设置 <code>static_key</code> 时必填。</p>
<p><code>static_key</code> 冲突。</p>
<h3 id="key_direction">key_direction</h3>
<p>静态密钥方向,可选值为 <code>server</code><code>client</code></p>
<p>为空时双向使用密钥。仅在 <code>static_key</code> 模式下可用。</p>
<h3 id="tls">tls</h3>
<p>在 TLS 模式下必填。</p>
<p>OpenVPN 控制通道 TLS 配置。</p>
<h3 id="tlsserver_name">tls.server_name</h3>
<p>预期的服务器证书名称。</p>
<p>为空时禁用证书名称验证,但仍会验证证书链或 fingerprint 与服务器证书用途。</p>
<h3 id="tlsserver_name_type">tls.server_name_type</h3>
<p><code>tls.server_name</code> 匹配的证书字段,可选值为 <code>subject</code><code>name</code><code>name-prefix</code></p>
<p>设置 <code>tls.server_name</code> 时默认使用 <code>name</code></p>
<p><code>subject</code> 匹配完整证书 subject<code>name</code> 精确匹配 common name<code>name-prefix</code> 匹配 common name 前缀。</p>
<h3 id="tlscertificate">tls.certificate</h3>
<p>受信任 CA 证书内容。</p>
<p><code>tls.certificate</code><code>tls.certificate_path</code><code>tls.peer_fingerprint</code> 之一必填。</p>
<p><code>tls.certificate_path</code> 冲突。</p>
<h3 id="tlscertificate_path">tls.certificate_path</h3>
<p>受信任 CA 证书路径。</p>
<p><code>tls.certificate</code><code>tls.certificate_path</code><code>tls.peer_fingerprint</code> 之一必填。</p>
<p><code>tls.certificate</code> 冲突。</p>
<h3 id="tlsclient_certificate">tls.client_certificate</h3>
<p>客户端证书内容。</p>
<p><code>tls.client_certificate_path</code> 冲突。</p>
<h3 id="tlsclient_certificate_path">tls.client_certificate_path</h3>
<p>客户端证书路径。</p>
<p><code>tls.client_certificate</code> 冲突。</p>
<h3 id="tlsclient_key">tls.client_key</h3>
<p>客户端私钥内容。</p>
<p><code>tls.client_key_path</code> 冲突。</p>
<h3 id="tlsclient_key_path">tls.client_key_path</h3>
<p>客户端私钥路径。</p>
<p><code>tls.client_key</code> 冲突。</p>
<p>客户端证书和私钥必须同时设置或同时为空。</p>
<h3 id="tlspeer_fingerprint">tls.peer_fingerprint</h3>
<p>允许的服务器 leaf certificate 的 SHA-256 fingerprint。</p>
<p>每个 fingerprint 必须是不带分隔符的 64 字符小写十六进制字符串。</p>
<p>同时配置受信任 CA 时,会同时验证证书链和 fingerprint。未配置受信任 CA 时,会验证 fingerprint、证书有效期、配置的名称和证书用途,但不验证证书链。</p>
<h3 id="tlscrl_path">tls.crl_path</h3>
<p>用于拒绝已吊销服务器证书的 PEM 或 DER CRL 文件路径。</p>
<p>根据受信任证书链验证 CRL 签名和有效期。</p>
<p>默认禁用。</p>
<h3 id="tlsremote_certificate_ku">tls.remote_certificate_ku</h3>
<p>服务器证书所需的 Key Usage mask,使用 OpenVPN <code>remote-cert-ku</code> 格式的十六进制值。</p>
<p>证书必须包含至少一个已配置 mask 中的所有 bit。</p>
<p>默认禁用。</p>
<h3 id="tlsremote_certificate_eku">tls.remote_certificate_eku</h3>
<p>服务器证书所需的 Extended Key Usage。</p>
<p>接受 OpenSSL 名称、Object Identifier 以及 <code>server</code><code>client</code> 别名。</p>
<p>设置后,该字段会替代默认的 <code>tls.remote_certificate_tls</code> 检查。</p>
<p>与显式配置的 <code>tls.remote_certificate_tls</code> 冲突。</p>
<h3 id="tlsremote_certificate_tls">tls.remote_certificate_tls</h3>
<p>对端证书用途检查,可选值为 <code>server</code><code>client</code><code>none</code></p>
<p>默认使用 <code>server</code></p>
<p><code>none</code> 禁用证书用途检查。</p>
<p><code>tls.remote_certificate_eku</code> 冲突。</p>
<h3 id="tlscertificate_profile">tls.certificate_profile</h3>
<p>证书 profile,可选值为 <code>insecure</code><code>legacy</code><code>preferred</code><code>suiteb</code></p>
<p>默认使用 <code>legacy</code></p>
<p><code>insecure</code> 为兼容不可变对端而接受使用 MD5 或 SHA-1 签名的证书链和较小的旧密钥,仅应在对端无法升级时使用。<code>legacy</code> 接受 SHA-1 但拒绝 MD5 签名;<code>preferred</code> 要求更强的签名和密钥。</p>
<p>选择 <code>suiteb</code><code>tls.cipher</code> 为空时,TLS 1.2 cipher 列表默认使用 Suite B ECDHE-ECDSA AES-GCM 套件。该 profile 不限制显式配置的 <code>tls.cipher</code><code>tls.groups</code></p>
<h3 id="tlsns_certificate_type">tls.ns_certificate_type</h3>
<p>已弃用的 Netscape 证书类型检查,<code>server</code><code>client</code> 之一。</p>
<p>默认禁用。请优先使用 <code>tls.remote_certificate_tls</code></p>
<h3 id="tlsversion_min">tls.version_min</h3>
<p>最低 TLS 版本,可选值为 <code>1.0</code><code>1.1</code><code>1.2</code><code>1.3</code></p>
<p>默认使用 <code>1.2</code></p>
<h3 id="tlsversion_max">tls.version_max</h3>
<p>最高 TLS 版本,可选值为 <code>1.0</code><code>1.1</code><code>1.2</code><code>1.3</code></p>
<p>默认使用支持的最高版本。</p>
<p>该值不能低于 <code>tls.version_min</code></p>
<h3 id="tlscipher">tls.cipher</h3>
<p>TLS 1.2 及更低版本允许的 OpenSSL cipher suite 名称,以冒号分隔。</p>
<p>为空时使用默认 TLS cipher suite。该字段不控制 TLS 1.3 cipher suite。</p>
<h3 id="tlsgroups">tls.groups</h3>
<p>按偏好顺序排列的 TLS key exchange group,以冒号分隔。</p>
<p>支持 <code>X25519</code><code>SECP256R1</code><code>SECP384R1</code><code>SECP521R1</code>,包括其常用 OpenSSL 和 NIST 别名。</p>
<p>为空时使用默认 TLS group。</p>
<h3 id="tlscontrol_wrap">tls.control_wrap</h3>
<p>OpenVPN 控制通道封装。</p>
<p>等价于 OpenVPN <code>tls-auth</code><code>tls-crypt</code><code>tls-crypt-v2</code></p>
<p>为空时禁用。</p>
<h3 id="tlscontrol_wraptype">tls.control_wrap.type</h3>
<p>控制通道封装类型,可选值为 <code>tls_auth</code><code>tls_crypt</code><code>tls_crypt_v2</code></p>
<h3 id="tlscontrol_wrapkey">tls.control_wrap.key</h3>
<p>控制通道封装密钥内容。</p>
<p><code>tls.control_wrap.key_path</code> 冲突。</p>
<h3 id="tlscontrol_wrapkey_path">tls.control_wrap.key_path</h3>
<p>控制通道封装密钥路径。</p>
<p><code>tls.control_wrap.key</code> 冲突。</p>
<h3 id="tlscontrol_wrapdirection">tls.control_wrap.direction</h3>
<p><code>tls-auth</code> 密钥方向,可选值为 <code>server</code><code>client</code></p>
<p>仅当 <code>tls.control_wrap.type</code><code>tls_auth</code> 时可用。为空时双向使用密钥。</p>
<h3 id="cipher">cipher</h3>
<p><code>static_key</code> 模式使用的数据通道 cipher。</p>
<p>为空时使用上游静态密钥模式的默认值 <code>BF-CBC</code><code>BF-CBC</code> 是采用 64 位 block size
的旧 cipher;应尽可能显式配置服务器要求的 cipher。静态密钥 cipher 包括
<code>BF-CBC</code><code>CAST5-CBC</code><code>DES-CBC</code><code>DES-EDE-CBC</code><code>DES-EDE3-CBC</code>
AES-CBC、ARIA-CBC、Camellia-CBC 系列,以及 <code>SEED-CBC</code><code>SM4-CBC</code><code>NONE</code></p>
<p>仅在 <code>static_key</code> 模式下可用。<code>NONE</code> 不提供机密性。</p>
<h3 id="data_ciphers">data_ciphers</h3>
<p>允许的 OpenVPN 数据通道 cipher。</p>
<p>仅在 TLS 模式下可用。</p>
<p>默认使用 <code>AES-256-GCM</code><code>AES-128-GCM</code><code>CHACHA20-POLY1305</code></p>
<p>AES-GCM 系列还包括 <code>AES-192-GCM</code>。保留的 cipher 包括 AES、ARIA、Camellia、DES、Blowfish、CAST5、SEED 和 SM4 的 CBC、CFB、OFB 形式,以及 <code>NONE</code>。CFB 和 OFB 仅可用于 TLS 模式。旧 cipher 只能提供较弱的机密性或完全不加密,因此默认不启用。</p>
<h3 id="data_ciphers_fallback">data_ciphers_fallback</h3>
<p>用于不支持 cipher 协商的对端的数据通道 cipher。</p>
<p>默认禁用。</p>
<p>仅在 TLS 模式下可用。</p>
<h3 id="auth">auth</h3>
<p>OpenVPN 数据通道认证摘要。</p>
<p>默认使用 <code>SHA1</code>,仅应用于非 AEAD 数据 cipher 和 <code>tls_auth</code></p>
<p>为兼容既有服务器,显式配置时仍可使用 <code>MD5</code><code>RIPEMD160</code> 等旧摘要。</p>
<h3 id="mss_fix">mss_fix</h3>
<p>OpenVPN UDP packet 的最大大小,用于限制通过隧道发送的 TCP 连接 MSS。</p>
<p>这可以避免 TCP packet 在 OpenVPN 封装后超过 path MTU。</p>
<p>为空时使用上游 OpenVPN 默认值:配置了 <code>fragment</code> 时使用其值;否则默认 tunnel MTU 使用 <code>1492</code>,自定义 tunnel MTU 使用该 MTU。</p>
<h3 id="mss_fix_disabled">mss_fix_disabled</h3>
<p>禁用 MSS 限制,包括默认限制。</p>
<p><code>mss_fix</code><code>mss_fix_mode</code> 冲突。</p>
<h3 id="mss_fix_mode">mss_fix_mode</h3>
<p>显式 <code>mss_fix</code> 的 OpenVPN MSS 计算模式,<code>mtu</code><code>fixed</code> 之一。</p>
<p>空值使用普通的 OpenVPN 封装开销计算。<code>mtu</code> 还会计算外层 IP 和 UDP/TCP 传输头;<code>fixed</code><code>mss_fix</code> 视为内层 IPv4 数据包大小。</p>
<p>需要 <code>mss_fix</code></p>
<h3 id="fragment">fragment</h3>
<p>用于 OpenVPN 数据通道 fragmentation 的最大 OpenVPN UDP packet 大小。</p>
<p>设为 <code>0</code> 时禁用。非零值必须至少为 <code>68</code></p>
<p>与 TCP 传输冲突。</p>
<h3 id="replay_window">replay_window</h3>
<p>UDP 数据通道重放窗口大小。默认使用 <code>64</code>,最大值为 <code>65536</code></p>
<p>TCP 始终要求数据包 ID 严格连续。</p>
<h3 id="replay_window_time">replay_window_time</h3>
<p>UDP 数据通道重放窗口时长。默认使用 <code>15s</code>,最大值为 <code>10m</code></p>
<p>该值必须使用整秒。</p>
<h3 id="compression">compression</h3>
<p>OpenVPN <code>compress</code> framing 模式,可选值为 <code>none</code><code>no</code><code>lz4</code><code>lz4-v2</code><code>stub</code><code>stub-v2</code><code>disabled</code><code>off</code></p>
<p>默认禁用。</p>
<p>Compression 可能削弱流量机密性。仅在需要 framing 兼容性时使用 <code>stub</code><code>stub-v2</code></p>
<h3 id="compression_lzo">compression_lzo</h3>
<p>OpenVPN <code>comp-lzo</code> 模式,可选值为 <code>none</code><code>no</code><code>yes</code><code>adaptive</code><code>asym</code><code>disabled</code><code>off</code></p>
<p>默认禁用。</p>
<p>Compression 可能削弱流量机密性。仅在服务器要求时启用。</p>
<h3 id="allow_compression">allow_compression</h3>
<p>服务器推送的 compression 策略,可选值为 <code>no</code><code>asym</code><code>yes</code></p>
<p>默认使用 <code>no</code>,仅允许 compression stub framing。<code>asym</code> 接受来自服务器的 compressed packet,但不压缩出站 packet。为兼容 OpenVPN 2.7<code>yes</code> 作为 <code>asym</code> 的旧别名接受;客户端绝不会发送 compressed packet。</p>
<p>当设为 <code>no</code> 时,与通过 <code>compression</code><code>compression_lzo</code> 启用的非 stub compression 冲突。</p>
<h3 id="route_no_pull">route_no_pull</h3>
<p>忽略服务器推送的 route、DNS 和 DHCP 设置、route metric、<code>redirect-gateway</code>
<code>redirect-private</code><code>block-ipv6</code><code>block-outside-dns</code></p>
<p>仍会使用接口配置、topology、tunnel MTU、<code>route-gateway</code> 和本地配置的 route。</p>
<p>默认禁用。</p>
<h3 id="pull_filters">pull_filters</h3>
<p>服务器推送选项的有序 pull filter 列表。</p>
<p>应用第一个 <code>text</code> 为完整推送选项大小写敏感前缀的 filter。未匹配任何 filter 的选项会被接受。</p>
<h3 id="pull_filtersaction">pull_filters.action</h3>
<p><mark>必填</mark></p>
<p>Filter action,可选值为 <code>accept</code><code>ignore</code><code>reject</code></p>
<p><code>accept</code> 应用选项,<code>ignore</code> 丢弃选项,<code>reject</code> 终止连接。</p>
<h3 id="pull_filterstext">pull_filters.text</h3>
<p><mark>必填</mark></p>
<p>用于匹配推送选项名称和值的大小写敏感前缀。</p>
<p>例如,<code>route</code> 会匹配推送的 IPv4 route 选项,但不会匹配 <code>route-gateway</code></p>
<h3 id="routes">routes</h3>
<p>sing-box 路由优先选择此 OpenVPN endpoint 的 IPv4 和 IPv6 前缀。</p>
<p>这些 route 会与从服务器接受的 route 一起使用。</p>
<p>它们不会安装操作系统路由。请通过 sing-box 路由规则或 endpoint 的首选路由行为选择此 endpoint。</p>
<h3 id="route_gateway">route_gateway</h3>
<p>通过 OpenVPN endpoint 路由的 IPv4 gateway。</p>
<p>为空时使用从服务器接收的 VPN gateway。</p>
<p>该值仅为兼容 OpenVPN 配置而保留;endpoint 的路由偏好只按前缀判断,不会安装系统 gateway 路由。</p>
<h3 id="route_metric">route_metric</h3>
<p>通过 OpenVPN endpoint 路由的默认 metric。</p>
<p>设为 <code>0</code> 时使用平台默认值。</p>
<p>该值仅为兼容 OpenVPN 配置而保留,不会安装系统路由。</p>
<h3 id="redirect_gateway">redirect_gateway</h3>
<p>在 sing-box 路由中对所有 IPv4 目的地优先选择 OpenVPN endpoint。</p>
<p>默认禁用。</p>
<p>这不会安装操作系统默认路由。</p>
<h3 id="redirect_gateway_flags">redirect_gateway_flags</h3>
<p>OpenVPN <code>redirect-gateway</code> flag。</p>
<p><code>!ipv4</code> 禁用 IPv4 偏好,<code>def1</code> 使用两个 <code>/1</code> 前缀表示,<code>ipv6</code> 还会优先选择上游特定的 IPv6 前缀。OpenVPN 控制连接始终使用其配置的出站拨号器,不经过 endpoint 路由,因此 <code>local</code><code>autolocal</code> 不需要系统路由例外。由于 sing-box 不会把推送的 DHCP 或 DNS 设置安装到操作系统,<code>bypass-dhcp</code><code>bypass-dns</code> 不适用。<code>block-local</code> 不受支持,因为 endpoint 没有可跨平台获取物理默认网关的来源,无法保留网关例外。</p>
<p>默认为空。</p>
<h3 id="redirect_private">redirect_private</h3>
<p>接受 <code>redirect_gateway_flags</code>,但不添加默认路由偏好。单独推送或配置的路由仍会影响 endpoint 的首选地址,但不会安装操作系统路由。</p>
<p>默认禁用。</p>
<h3 id="block_ipv6">block_ipv6</h3>
<p>在本地拒绝 IPv6 流量,而不是通过 VPN 发送。</p>
<p>默认禁用。</p>
<h3 id="ping_interval">ping_interval</h3>
<p>客户端未向服务器发送任何 packet 时,发送 data channel ping 的间隔。</p>
<p>服务器推送的 OpenVPN <code>ping</code> 值优先于该值。</p>
<p>该值必须使用整秒。</p>
<p>默认禁用。</p>
<h3 id="ping_restart">ping_restart</h3>
<p>客户端未收到任何 packet 后重新连接服务器的时间。</p>
<p>服务器推送的 OpenVPN <code>ping-restart</code> 值优先于该值。</p>
<p>该值必须使用整秒。</p>
<p>为空时,启用了 pull 的 UDP 连接会使用 <code>120s</code>,直到服务器推送其他值。TCP 不使用默认接收超时。</p>
<h3 id="ping_restart_disabled">ping_restart_disabled</h3>
<p>禁用初始 <code>120s</code> UDP 拉取超时和本地配置的 ping 重启超时。</p>
<p><code>ping_restart</code> 冲突。</p>
<h3 id="renegotiate_interval">renegotiate_interval</h3>
<p>OpenVPN TLS 重新协商间隔。</p>
<p>为空时使用 OpenVPN 默认值 <code>1h</code></p>
<h3 id="renegotiate_disabled">renegotiate_disabled</h3>
<p>禁用基于时间的 TLS 重新协商,包括默认间隔。</p>
<p><code>renegotiate_interval</code> 冲突。</p>
<h3 id="renegotiate_bytes">renegotiate_bytes</h3>
<p>传输指定字节数后重新协商数据通道密钥。<code>0</code> 使用与密码算法相关的 OpenVPN 默认值。</p>
<h3 id="renegotiate_packets">renegotiate_packets</h3>
<p>传输指定数据包数后重新协商数据通道密钥。<code>0</code> 使用与密码算法相关的 OpenVPN 默认值。</p>
<h3 id="tls_timeout">tls_timeout</h3>
<p>TLS 控制数据包的初始重传超时。为空时使用 OpenVPN 默认值 <code>2s</code></p>
<h3 id="handshake_window">handshake_window</h3>
<p>初始 TLS 握手及每次重新协商的最长允许时间。为空时使用 OpenVPN 默认值 <code>1m</code></p>
<h3 id="explicit_exit_notify">explicit_exit_notify</h3>
<p>关闭 UDP 连接时发送的 OpenVPN exit notification 数量。</p>
<p>Notification 之间间隔一秒。设为 <code>0</code> 时禁用。</p>
<h3 id="system">system</h3>
<p>使用系统接口。</p>
<p>需要权限,且不能与现有系统接口冲突。</p>
<p>endpoint 会配置接口地址和 MTU,但不会安装操作系统路由或 DNS 设置。</p>
<p>禁用时,sing-box 使用内部网络栈。</p>
<h3 id="name">name</h3>
<p>系统接口的自定义接口名称。</p>
<p>默认使用自动生成的 <code>ovpn</code> 接口名称。</p>
<h3 id="mtu">mtu</h3>
<p>OpenVPN 接口 MTU。</p>
<p>为空时使用服务器推送的 MTU;收到服务器配置前使用 <code>1500</code></p>
<h2 id="udp-nat-字段">UDP NAT 字段</h2>
<p>参阅 <a href="/zh/configuration/shared/udp-nat/">UDP NAT 字段</a></p>
<h2 id="拨号字段">拨号字段</h2>
<p>参阅<a href="/zh/configuration/shared/dial/">拨号字段</a></p>
<h2 id="交互式认证">交互式认证</h2>
<p>在 sing-box dashboard 或任意 sing-box 图形客户端的 <code>工具</code> &gt; <code>端点</code> 中认证和管理 endpoint。</p>
</article>
</div>
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
</div>
</main>
<footer class="md-footer">
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-copyright">
<div class="md-copyright__highlight">
Copyright &copy; 2022 nekohasekai
</div>
</div>
<div class="md-social">
<a href="https://github.com/SagerNet/sing-box" target="_blank" rel="noopener" title="github.com" class="md-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M173.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M252.8 8C114.1 8 8 113.3 8 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C436.2 457.8 504 362.9 504 252 504 113.3 391.5 8 252.8 8M105.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
</a>
</div>
</div>
</div>
</footer>
</div>
<div class="md-dialog" data-md-component="dialog">
<div class="md-dialog__inner md-typeset"></div>
</div>
<script id="__config" type="application/json">{"annotate": null, "base": "../../../..", "features": ["navigation.tracking", "navigation.tabs", "navigation.indexes", "navigation.expand", "navigation.sections", "header.autohide", "content.code.copy", "content.code.select", "content.code.annotate"], "search": "../../../../assets/javascripts/workers/search.2c215733.min.js", "tags": null, "translations": {"clipboard.copied": "\u5df2\u590d\u5236", "clipboard.copy": "\u590d\u5236", "search.result.more.one": "\u5728\u8be5\u9875\u4e0a\u8fd8\u6709 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.more.other": "\u5728\u8be5\u9875\u4e0a\u8fd8\u6709 # \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.none": "\u6ca1\u6709\u627e\u5230\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.one": "\u627e\u5230 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.other": "# \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.placeholder": "\u952e\u5165\u4ee5\u5f00\u59cb\u641c\u7d22", "search.result.term.missing": "\u7f3a\u5c11", "select.version": "\u9009\u62e9\u5f53\u524d\u7248\u672c"}, "version": null}</script>
<script src="../../../../assets/javascripts/bundle.79ae519e.min.js"></script>
</body>
</html>