ipv6透明代理
因爲我本地沒有ipv6的地址,所以我的ipv6走的v2ray。
1. ipset 設置
添加保留地址
ipset -N reservedip6 nethash family inet6
ipset add reservedip6 ::/128
ipset add reservedip6 ::1/128
ipset add reservedip6 ::ffff:0:0/96
ipset add reservedip6 100::/64
ipset add reservedip6 64:ff9b::/96
ipset add reservedip6 2001::/32
ipset add reservedip6 2001:10::/28
ipset add reservedip6 2001:20::/28
ipset add reservedip6 2001:db8::/32
ipset add reservedip6 2002::/16
ipset add reservedip6 fc00::/7
ipset add reservedip6 fe80::/10
ipset add reservedip6 ff00::/8
添加服務器地址(因爲我的流量全部走的ipv4,所以不用設置)
ipset -N noproxy6 nethash family inet6
ipset add noproxy6 服務器ipv6地址
2. iptables設置
ip -6 rule add fwmark 1 table 100
ip -6 route add local ::/0 dev lo table 100
ip6tables -t mangle -N V2RAY
ip6tables -t mangle -A V2RAY -j RETURN -m mark --mark 2
ip6tables -t mangle -A V2RAY -m set --match-set reservedip6 dst -j RETURN
ip6tables -t mangle -A V2RAY -m set --match-set noproxy6 dst -j RETURN
ip6tables -t mangle -A V2RAY -p udp -j TPROXY --on-port 12345 --tproxy-mark 0x01/0x01
ip6tables -t mangle -A V2RAY -p tcp -j TPROXY --on-port 12345 --tproxy-mark 0x01/0x01
ip6tables -t mangle -N V2RAY_MARK
ip6tables -t mangle -A V2RAY_MARK -m set --match-set reservedip6 dst -j RETURN
ip6tables -t mangle -A V2RAY_MARK -m set --match-set noproxy6 dst -j RETURN
ip6tables -t mangle -A V2RAY_MARK -m mark --mark 2 -j RETURN
ip6tables -t mangle -A V2RAY_MARK -p udp -j MARK --set-mark 1
ip6tables -t mangle -A V2RAY_MARK -p tcp -j MARK --set-mark 1
ip6tables -t mangle -A PREROUTING -j V2RAY
ip6tables -t mangle -A OUTPUT -j V2RAY_MARK
最後使用 v2ray 的 Dokodemo-door 監聽 12345 端口即可。
Comments