diff --git a/docs/document/level-2/tproxy_ipv4_and_ipv6.md b/docs/document/level-2/tproxy_ipv4_and_ipv6.md index ff44228..71836b7 100644 --- a/docs/document/level-2/tproxy_ipv4_and_ipv6.md +++ b/docs/document/level-2/tproxy_ipv4_and_ipv6.md @@ -4,7 +4,7 @@ title: TProxy 透明代理 (ipv4 and ipv6) # TProxy 透明代理(ipv4 and ipv6)配置教程 -本配置参考了[TProxy 透明代理的新 V2Ray 白话文教程](https://guide.v2fly.org/app/tproxy.html),[透明代理(TProxy)配置教程](https://xtls.github.io/document/level-2/tproxy.html#%E5%BC%80%E5%A7%8B%E4%B9%8B%E5%89%8D)以及[透明代理通过 gid 规避 Xray 流量](https://xtls.github.io/document/level-2/iptables_gid.html),加入了透明代理对 ipv6 的支持,并且使用 VLESS-TCP-XTLS-RPRX-Vision 方案对抗封锁。 +本配置参考了[TProxy 透明代理的新 V2Ray 白话文教程](https://guide.v2fly.org/app/tproxy.html),[透明代理(TProxy)配置教程](https://xtls.github.io/document/level-2/tproxy.html#%E5%BC%80%E5%A7%8B%E4%B9%8B%E5%89%8D)以及[透明代理通过 gid 规避 Xray 流量](https://xtls.github.io/document/level-2/iptables_gid.html),加入了透明代理对 ipv6 的支持,并且使用 VLESS-TCP-XTLS-RPRX-Vision 方案对抗封锁 (推荐使用 1.7.2 及之后版本)。 关于 Xray 的配置并不是本文重点,使用者可依实际情况进行修改,具体可以参考[官方文档示例](https://github.com/XTLS/Xray-examples)或其他优秀示例 比如[@chika0801](https://github.com/chika0801/Xray-examples) 又如[@lxhao61](https://github.com/lxhao61/integrated-examples)。 @@ -33,14 +33,12 @@ title: TProxy 透明代理 (ipv4 and ipv6) ::: tip 透明代理中的 fakedns -在旁路由的透明代理中,使用 `fakedns` 配合 `routeOnly` 以及 `domainSrategy` 为 `AsIs` 时,可最大程度降低访问延迟,详见文档[入站代理](https://xtls.github.io/config/inbound.html#sniffingobject) - -关于 `fakedns` 相关内容可参阅[官方文档](https://xtls.github.io/config/fakedns.html) +在旁路由的透明代理中,使用`routeOnly` 配合 `domainSrategy` 为 `AsIs` 时,可最大程度降低访问延迟,详见文档[入站代理](https://xtls.github.io/config/inbound.html#sniffingobject) ::: - + ```json { @@ -58,8 +56,7 @@ title: TProxy 透明代理 (ipv4 and ipv6) }, "sniffing": { "enabled": true, - "destOverride": ["fakedns", "http", "tls"], - "metadataOnly": false, + "destOverride": ["http", "tls"], "routeOnly": true }, "streamSettings": { @@ -107,9 +104,6 @@ title: TProxy 透明代理 (ipv4 and ipv6) { "tag": "direct", "protocol": "freedom", - "settings": { - "domainStrategy": "UseIP" - }, "streamSettings": { "sockopt": { "mark": 255 @@ -124,34 +118,12 @@ title: TProxy 透明代理 (ipv4 and ipv6) "type": "http" } } - }, - { - "tag": "dns-out", - "protocol": "dns", - "streamSettings": { - "sockopt": { - "mark": 255 - } - } } ], - "dns": { - "hosts": { - "填你VPS的域名": "填你VPS的ipv4或ipv6" //注意修改 - }, - "servers": ["fakedns"] - }, "routing": { "domainMatcher": "mph", "domainStrategy": "AsIs", "rules": [ - { - "type": "field", - "inboundTag": ["all-in"], - "port": 53, - "network": "udp", - "outboundTag": "dns-out" - }, { "type": "field", "inboundTag": ["all-in"], @@ -181,7 +153,7 @@ title: TProxy 透明代理 (ipv4 and ipv6) }, { "type": "field", - "ip": ["geoip:private", "geoip:cn"], + "ip": ["geoip:private"], "outboundTag": "direct" } ] @@ -191,7 +163,7 @@ title: TProxy 透明代理 (ipv4 and ipv6) - + ```json { @@ -356,7 +328,7 @@ title: TProxy 透明代理 (ipv4 and ipv6) }, { "type": "field", - "ip": ["geoip:private", "geoip:cn"], + "ip": ["geoip:private", "geoip:cn"], //此处可加入 VPS IP 避免 ssh 时被代理 "outboundTag": "direct" }, { @@ -402,7 +374,12 @@ title: TProxy 透明代理 (ipv4 and ipv6) "flow": "xtls-rprx-vision" } ], - "decryption": "none" + "decryption": "none", + "fallbacks": [ + { + "dest": 8080 //回落 + } + ] }, "streamSettings": { "network": "tcp", @@ -454,6 +431,16 @@ ip -6 route add default via fd00:6868:6868::1 #写主路由 ipv6, 采用局域 ``` +::: tip 使用方法 + +直接将命令复制到旁路由终端执行 +::: + +::: tip 关于直连从主路由发出 + +在旁路由使用命令`ip route show`,如果使用下属方法一,则`default via`后应是主路由 ip,无需更改;如使用下述方法二,则`default via`后应是旁路由 ip,此时直连网站 DNS 解析会回环,造成直连网站无法访问,因此需指定为主路由 ip。 +::: + 如果是在路由器上指定了默认网关为旁路由(亦即下述“局域网设备上网设置方法二”),那么就需要设置上述 `# 直连从主路由发出` ,除了通过 iproute2 命令行方式设置,也可以通过 dhcpcd 或者 systemctl-network 设置静态 IP,这里以 dhcpcd 为例,编辑 `/etc/dhcpcd.conf` 文件,在最下方加入如下配置,具体 IP 根据你的实际情况修改,其中 `interface` 可以通过 `# ip link show` 查看要设定的网口或者无线设备。 ``` @@ -466,11 +453,6 @@ static domain_name_servers=192.168.31.1 fd00:6868:6868::1 这样通过静态 IP 设置 IP 及网关后就无需每次开机设置 `# 直连从主路由发出`。 -::: tip 使用方法 - -直接将命令复制到旁路由终端执行 -::: - ::: warning 注意 以下 nftables 配置与 iptables 配置二选一,不可同时使用。 @@ -596,11 +578,6 @@ table inet xray { 最后使用 root 权限执行该文件即可:`# ./nftables.rules`或`# source nftables.rules` ::: -::: tip 关于直连从主路由发出 - -在旁路由使用命令`ip route show`,如果使用下属方法一,则`default via`后应是主路由 ip,无需更改;如使用下述方法二,则`default via`后应是旁路由 ip,此时直连网站 DNS 解析会回环,造成直连网站无法访问,因此需指定为主路由 ip。 -::: - 其中,网关地址`192.168.0.0/16`, `fd00::/8`等可由`ip address | grep -w inet | awk '{print $2}'`以及`ip address | grep -w inet6 | awk '{print $2}'`[获得](https://xtls.github.io/document/level-2/iptables_gid.html#_4-%E8%AE%BE%E7%BD%AE-iptables-%E8%A7%84%E5%88%99) 或者在 windows 网络设置中查看。 @@ -722,7 +699,7 @@ WantedBy=multi-user.target ## Finally -按照以上方法设置后设备即可双栈访问,进入测试网站比如 https://ipv6-test.com/ 可以看到如下结果 +按照以上方法设置后设备即可双栈访问,进入测试网站比如 https://ipv6-test.com/ 可以看到如下结果 (需要代理此网站才能看到如下结果) image