1
在CentOS 7上使用IPv6获取Squid和TPROXY
我在让TPROXY在CentOS 7服务器上使用Squid和IPv6时遇到麻烦。我以前使用的是带有NAT的通用拦截设置,但仅限于IPv4。我现在正在扩展设置,使其包含带有TPROXY的IPv6。 我一直在使用有关该主题的官方Squid Wiki文章来配置所有内容: http://wiki.squid-cache.org/Features/Tproxy4 到目前为止,TPROXY配置似乎可以正常用于IPv4。但是,使用IPv6时,连接超时,无法正常工作。我将分解设置以便更好地理解。 请注意,所有防火墙和路由规则对于IPv4都是完全相同的,唯一的区别是在下面的示例中inet6以及ip6tables用于配置基于IPv6的规则。 操作系统和内核:CentOS 7(3.10.0-229.14.1.el7.x86_64) 根据yum,所有软件包都是最新的 鱿鱼版:3.3.8(也尝试过3.5.9) 防火墙:iptables / ip6tables 1.4.21 libcap-2.22-8.el7.x86_64 目前,IPv6连接是通过Hurricane Electric通过6in4隧道进行的,该连接在DD-WRT路由器上进行配置,然后将分配的前缀通过委派给客户端radvd。Squid框配置了多个静态IPv6地址。 Squid框位于它所服务的主LAN内。在端口80上被拦截的客户端(主要是无线客户端)通过具有以下防火墙和路由规则的DD-WRT路由器,通过我的DD-WRT路由器被推送到Squid框,这些规则和规则来自于Policy Routing Wiki文章和DD-WRT Wiki http://wiki.squid-cache.org/ConfigExamples/Intercept/IptablesPolicyRoute http://www.dd-wrt.com/wiki/index.php/Squid_Transparent_Proxy ip6tables -t mangle -A PREROUTING -i "$CLIENTIFACE" -s "$PROXY_IPV6" -p tcp --dport 80 -j ACCEPT ip6tables -t mangle -A PREROUTING -i "$CLIENTIFACE" -p tcp --dport 80 …