Files
v2ray_simple/examples/tproxy.client.toml

63 lines
2.7 KiB
TOML
Raw 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.
# 本文件使用tproxy作为客户端监听协议. 服务端配置文件 直接使用 vlesss.server.toml 即可
# 相关配置和讲解 可以对照 https://toutyrater.github.io/app/tproxy.html
# 比如如何配置iptables, 要好好看上面教程. 原理都是一样的, 只是配置文件略有区别。
# 我们不像v2ray/xray一样 使用 dokodemo的额外配置来处理tproxy而是单独使用 tproxy作为一个协议.
# tproxy只支持客户端, 且目前只支持linux/macos系统
# 在macos中不需要额外参数但是仅支持ipv4和tcp。而且macos 12/13 系统上的 pfctl有bug无法配置路由.
# 建议mac上还是用tun的方法.
[[listen]]
protocol = "tproxy"
ip = "0.0.0.0" # 这里不要填 127.0.0.1了,否则只会转发本机流量,而一般作为透明代理都是为了转发局域网内其它设备的流量的。
port = 12345
# sockopt.tproxy = true # 不需要明示指明 tproxy这个 sockopt, 因为protocol指出tproxy后就会自动配置该项.
# 不用指明network, 只要指明了tproxy, 就会同时自动监听 tcp和 dup.
# 但是如果你指明了 network = tcp, 就不会转发udp, 你指明了 network = udp 的话,就不会转发 tcp.
#extra = { auto_iptables = true }
# 如果给出了 auto_iptables, 且 【protocol 为 tproxy 的listen】【只有一个】,
# 则程序会自动配置路由表
# linux上程序会自动在开始监听前配置好iptables并在程序退出前 清除iptables中被程序改动的部分。
# linux上, auto_iptables 会一字不差地运行 上面 给出的 toutyrater 的教程中的 iptables命令。
[[dial]]
protocol = "vlesss"
uuid = "a684455c-b14f-11ea-bf0d-42010aaa0003"
host = "127.0.0.1"
port = 4433
version = 0
insecure = true
tls_type = "utls"
sockopt.mark = 255 #linux 上, 根据上面 toutyrater 给出的 iptables命令我们这里要设置 mark为255. 看一下 上面 toutyrater的教程吧
# sockopt.device = "eth32423"
# vs还支持 bindToDevice功能可以指定 某一个网卡 来监听 或者拨号.
# 绑定网卡也是一个 避免回环的办法。如果你看了 toutyrater的教程你就知道它的iptable的命令很复杂还包括
# 打 somark都是为了避免回环存在的。如果你用 bindToDevice你的iptable所需的命令就会减少
# macOS 透明代理路由命令参考:
# sudo sysctl -w net.inet.ip.forwarding=1
# 创建一个文件pf.conf , 内容为:
# rdr pass on en0 inet proto tcp to any port {80, 443} -> 127.0.0.1 port 8080
# sudo pfctl -f pf.conf
# sudo pfctl -e
# 查看效果
# sudo pfctl -s nat
# 如果想停止使用透明代理访问禁用pf(sudo pfctl -d)或者清空pf规则(sudo pfctl -F all)即可。