mirror of
https://github.com/e1732a364fed/v2ray_simple.git
synced 2025-12-24 13:27:56 +08:00
155 lines
5.5 KiB
TOML
155 lines
5.5 KiB
TOML
# 注意,本作示例文件的listen和dial的地址均为 127.0.0.1,是可以直接进行内网测试的; 如果你要用于其它用途,自行修改地址。
|
||
|
||
[app]
|
||
loglevel = 1
|
||
|
||
# 使用了default_uuid后, 下面其它dial和listen的uuid就可以省略
|
||
|
||
default_uuid = "a684455c-b14f-11ea-bf0d-42010aaa0003"
|
||
|
||
admin_pass = "adfadfadfadfa" # 用于 api服务器的登陆密码.只要给出, 且命令行给了-ea参数, 就会自动运行api服务, 在 127.0.0.1:48345
|
||
|
||
[dns]
|
||
# 只要dns模块存在并给出了servers,则所有域名请求都会被先解析成ip
|
||
# dns解析仅仅是为了能够精准分流, 如果你不需要分流, 没有自定义dns需求,则不需要dns模块
|
||
|
||
# dns解析的默认方式是先查A记录,没有A再查AAAA记录
|
||
|
||
#strategy = 60 # 0表示默认, 4表示先查ip4后查ip6, 6表示先查6后查4; 40表示只查ipv4, 60 表示只查ipv6
|
||
# 在只查 ipv6时, 有可能查无结果, 此时将依然会把域名原封不动发送到节点, 而不是断开连接.
|
||
|
||
servers = [
|
||
"udp://114.114.114.114:53", # 如果把该url指向我们dokodemo监听的端口,就可以达到通过节点请求dns的目的.
|
||
#"udp://127.0.0.1:63782", # 如这一行 就是通过我们节点请求dns
|
||
|
||
#{ addr = "udp://8.8.8.8:53", domain = [ "google.com" ] }, # 还可以为特定域名指定特定服务器
|
||
#{ addr = "tls://223.5.5.5:853", domain = [ "twitter.com" ] } # 还可以 用 dns over tls
|
||
]
|
||
|
||
[dns.hosts] # 自己定义的dns解析
|
||
"www.myfake.com" = "11.22.33.44"
|
||
"www.myfake2.com" = "11.222.33.44"
|
||
|
||
[[listen]]
|
||
protocol = "http"
|
||
host = "127.0.0.1"
|
||
port = 1080
|
||
# noroute = true # 如果设置了noroute,则从该listen接受到的数据绝对不会被分流.
|
||
|
||
[[listen]]
|
||
protocol = "socks5"
|
||
host = "127.0.0.1"
|
||
port = 10800
|
||
|
||
[[listen]]
|
||
protocol = "dokodemo" # dokodemo协议会指定一个目标,并通过我们的节点来请求
|
||
network = "udp" # 本监听为了监听dns请求,所以必须要指明监听的传输层为 udp
|
||
host = "127.0.0.1"
|
||
port = 63782
|
||
target = "udp://8.8.8.8:53" #必须写这种url格式,前面是udp或者tcp,后面要加端口, 我们要转发到udp地址,所以用udp。
|
||
|
||
# 这个dokodemo 协议 在这一个示例中, 专门用于监听dns请求, 会通过我们的dial 来转发到 target(8.8.8.8,即google的dns服务器)
|
||
|
||
# 我们电脑只要配置好dns服务器指向127.0.0.1:63782,就可以通过我们的节点去申请实际的udp的dns请求,这里就是通过我们的 my_vless1 这个节点转发。
|
||
# 只要是定向的流量,如果某客户端可以自己指定地址,那么我们就可以用dokodemo进行转发
|
||
|
||
[[dial]]
|
||
tag = "my_vless1"
|
||
protocol = "vlesss"
|
||
host = "127.0.0.1"
|
||
port = 4433
|
||
version = 0
|
||
insecure = true
|
||
utls = true
|
||
|
||
|
||
[[dial]]
|
||
tag = "my_ws1"
|
||
protocol = "vlesss"
|
||
host = "127.0.0.1"
|
||
port = 4434
|
||
insecure = true
|
||
utls = true
|
||
advancedLayer = "ws"
|
||
path = "/ohmygod_verysimple_is_very_simple"
|
||
|
||
|
||
[[dial]]
|
||
tag = "my_grpc"
|
||
protocol = "vlesss"
|
||
host = "127.0.0.1"
|
||
port = 4435
|
||
version = 0
|
||
insecure = true
|
||
utls = true
|
||
advancedLayer = "grpc"
|
||
path = "ohmygod_verysimple_is_very_simple"
|
||
|
||
|
||
# route就是分流规则,分流规则从上到下匹配,匹配到哪一个就用哪一个.
|
||
|
||
[[route]]
|
||
dialTag = "my_vless1"
|
||
|
||
# 上面这个route中,我们只给了tag, 没给其它限定条件,这个是无效的,永远匹配不到。
|
||
|
||
|
||
[[route]]
|
||
|
||
# 意思就是所有向US国家的ip请求的数据 通通 通过 my_ws1 这个dial 拨号, 如果你写direct自然就直接直连
|
||
# direct并不需要 在dial中实际给出。 "proxy" 代表首个dial,也不需要实际赋值该tag
|
||
|
||
dialTag = "my_ws1"
|
||
country = ["US"]
|
||
|
||
|
||
# 比如这个就是 将CN国家的ip 导向自己的grpc节点
|
||
#[[route]]
|
||
#dialTag = "my_grpc"
|
||
#country = ["CN"]
|
||
|
||
|
||
# 比如这个就是 将CN国家的ip进行直连
|
||
#[[route]]
|
||
#dialTag = "direct"
|
||
#country = ["CN"]
|
||
|
||
# 本示例为了测试节点可用性, 默认将直连的路由注释掉了, 如果你在CN国家并想直连CN的ip, 请取消注释上面三行. 并移除其它路由CN的route项
|
||
|
||
|
||
# 下面这种dialTag传入列表的用法非常简洁, 可以达到负载均衡的效果,
|
||
# 每次路由US国家的流量都会随机从列表中选一项
|
||
#[[route]]
|
||
#dialTag = ["my_vps1","myvps2"]
|
||
#country = ["US"]
|
||
|
||
|
||
|
||
# 如果所有route均不匹配,则数据会流向 "proxy" 这个tag 的 dial,如果 没有任何dial具有 "proxy" 这个标签名,则流向第一个dial
|
||
|
||
# 如果匹配了app.mycountry, 则数据会直接被直连.
|
||
# 其它分流匹配示例:
|
||
# ip = ["0.0.0.0/8","10.0.0.0/8","fe80::/10","10.0.0.1"]
|
||
|
||
# 关于ip中使用cidr匹配ipv6,可以参考 https://www.mediawiki.org/wiki/Help:Range_blocks/IPv6
|
||
# 比如要想路由所有的ipv6地址,可用 ip = ["::/0"]
|
||
|
||
|
||
# 域名匹配完全兼容 v2ray,请参考 https://www.v2fly.org/config/routing.html#ruleobject
|
||
# 下面简单说一下:
|
||
# 不包含冒号的项会使用字符串匹配方式 (MATCH), 而如果是 domain:的话,会依次尝试匹配其子域名; 如果是full:的话则会完整匹配该域名
|
||
# 还可以用正则表达式,不过太难了我就不在这里讲了. 懂正则的人有需求就用, 不懂正则就不要用.
|
||
#
|
||
# domain = ["domain:www.google.com","full:www.twitter.com", "geosite:cn","baidu"]
|
||
|
||
# 比如这个就是 将CN国家的域名 导向自己的grpc节点
|
||
[[route]]
|
||
dialTag = "my_grpc"
|
||
domain = ["geosite:cn"]
|
||
|
||
# 其它匹配:
|
||
# network = ["tcp","udp"] # 匹配 实际客户数据的 传输层协议
|
||
# inTag = ["tag1","tag2"] # 匹配 来自哪一个 listen tag
|
||
# country = ["CN"] # 匹配 geoip 以及 cn 顶级域名.
|
||
|