Files
v2ray_simple/examples/vlesss.client.toml
T
2022-05-08 09:11:15 +08:00

102 lines
5.6 KiB
TOML

# this is a verysimple standard client config
# toml 格式 要注意的是,字符串类型 必须用 引号括起来
[app] # app 项是可选的
# 日志等级,默认为1. 0=debug, 1=info, 2=warning, 3=error, 4=dpanic, 5=panic, 6=fatal,
# 推荐开发时用0, 日常使用时 使用1或2; 显然日志越少越快, 设为6或者更大值的话性能是最好的.
#loglevel = 1
# 日志文件地址, 如果路径不存在,会自动创建父文件夹; 可以不为路径, 仅为名称,
# 但是如果只是名称的话,就会在工作目录创建日志,这可能不是想要的结果。
#
# 若未给出 或 给出的值为 vs_log,则会自动在工作目录 生成 vs_log文件, 且:
# 若配置文件名称包含client,则改为生成 vs_log_client 文件;
# 若配置文件名称包含 server, 则改为生成 vs_log_server 文件;
# 若设为空字符串,则不生成日志文件.
#logfile = "/var/log/verysimple/vs_log"
# 如果 default_uuid 给出了,且某个 需要uuid的地方没给出,则会使用 default_uuid 的值
# default_uuid = "a684455c-b14f-11ea-bf0d-42010aaa0003"
# mycountry = "CN" #全局级的 国别分流配置, 见下面route的注释
# noreadv = true
# 也可以用命令行参数 -readv=false 来关闭 readv . readv开启 一般是会加速的, 但不排除减速可能.
# 你可以在测速时开关一下readv看看测速的变化, 如果遇到了readv减速的话, 可以通过设置把它关闭。
# 配置udp闲置连接的超时时间. 因为udp是无状态协议, 一旦拨号,是没法确定服务端何时关闭连接的
# 这里单位为分钟,我们默认超时时间就为 3分钟. 如果你有特殊需求, 可以自行调节。
# 不建议过大,因为过大的话, 会造成大量占用本地udp端口的情况, 可能会导致 too many open files 错误
#
# 另外注意, 如果direct 启用了 fullcone 的话, 是不会使用超时的, 所以fullcone时要注意 too many open files 错误, 如果遇到了, 那么你要重启服务端和客户端.
#
# udp_timeout = 3
[[listen]]
tag = "my_socks5" # 可选, 但不可与其他tag重复
protocol = "socks5" # 必填
host = "127.0.0.1" # 必填, 可填ip或域名;如果 network是unix的话,要填一个文件名(不需要已存在,可以是完整路径).
port = 10800 # 必填
[[dial]]
tag = "my_vlesss1" # 同listen对应配置, 可选, 但不可与其他tag重复
protocol = "vlesss" # vless 的 尾缀s 表示 使用tls
uuid = "a684455c-b14f-11ea-bf0d-42010aaa0003" # 这个只是一个示例uuid,请自己生成一个新的.
host = "127.0.0.1" # 同listen对应配置, 可填ip或域名;如果 network是unix的话,要填一个文件名(不需要已存在,可以是完整路径).
#network = "udp"
# network 目前支持 tcp,udp 和unix;如果不给出则默认为 tcp; dial和listen都可配置此项
# network和用什么协议无关.比如我们可以硬把一个 ss协议的数据通过 unix socket来传输.
# 如果用udp的话,传输vless 时即可理解为 udp over udp 或者 tcp over udp, 底层用udp来传输tcp/udp的承载数据.
# 总之我们verysimple的理念就是 代理协议是什么协议 与 传输层使用什么协议是无关的
# ip = "127.0.0.1"
# 除了host之外,也可使用 ip = "127.0.0.1"; 一般用了host就不需要再写ip,
# 但是如果用了cdn 的话, 就要单独提供 ip 和 host
# 单独提供 ip 的好处就是不用解析域名了
# 另外,如果你的vps是ipv6机,则 ipv6 两端要加中括号 , 变成类似 "[2408:0000]"" 这种
# tls = true
# 除了在 protocol 字段使用 s尾缀 之外,还可以明示使用tls.
# 这两种方法不可重复使用.我们首选前者, 更简约, 当然如果你使用时,需要频繁开关tls,那么可以单独列出来 便于配置
port = 4433 # 必填
version = 0 # 协议版本, 可省略, 省略则默认为最老版本
insecure = true # 我们示例使用自签名证书,所以要开启 insecure. 实际场合请使用真证书并关闭 insecure
utls = true #是否使用 utls 来应用 chrome指纹进行伪装
# alpn=["http/1.1"] # 在开启tls时有效,如果服务端和客户端都配置了alpn,则 服务端和客户端 必须都有相同的alpn项才能建立tls连接
# 如果要使用 websocket/grpc ,则 客户端和服务端 都要配置 advancedLayer 和 path
# 下面cert和key用于 "客户端证书", 小白可以无视,高级玩家可以用. 证书的生成命令 详见 README.md
#cert = "client.crt"
#key = "client.key"
# advancedLayer = "ws" # 也可为 grpc 或 quic
# path = "/ohmygod_verysimple_is_very_simple" # ws的path和 grpc的serviceName 都在这个path里填写, 为了防探测这里越长越随机越好
[[dial]]
tag = "direct"
protocol = "direct" # direct 这个dial 是不需要特地写出的, 程序会自动创建一个 direct 的 dial. 不过如果是需要控制一下fullcone 的话, 此时就要写出来,因为程序默认的 direct 是不开启 fullcone的。
# fullcone = true # 默认的fullcone是关闭状态, 可以取消注释以打开.
# route 是在我们代理界是分流的意思。
# route 是可选的,如果没给出的话,就不分流;
# 写了 country 后, 向该国家的ip发送的请求就会直连, 然后其他的过代理
# country的字母必须是两个,而且必须大写。这个也会自动被用于顶级域名的国别分流
# 同时,必须要一个 GeoLite2-Country.mmdb 文件 放在verysimple的相同目录下. 详情见 README.md
# 具体的其它详细 分流配置请参考 multi.client.toml 和 multi.server.toml 文件, 因为会涉及到多个dial
[[route]]
country = ["CN"]
domain = ["geosite:cn"]
toTag = "mydirect"