使用IPIP TUNNEL连接两台服务器打通隧道

什么是IPIP隧道?
与代理非常相似,IPIP隧道允许您将流量从BuyVPS(包括DDoS过滤)传递到另一个远程目的地。

IPIP隧道允许全流量通过,而不仅仅是HTTP。通过IPIP隧道,您可以从任何类型的服务器(音频、音频、FTP、SSH、SCP、视频等)。

您能使用IPIP隧道做什么?
当您想使用我们的DDoS过滤服务来保护那些太大而无法与我们一起托管的服务(例如游戏服务器、Java应用程序、大型数据库驱动应用程序等)时,IPIP隧道非常方便。

IPIP隧道也是OVH在其包含的内核中支持的唯一隧道方法。

您的目标服务器没有根访问权,还是正在运行庞大的Windows部署?看看我们的替代方法重定向交通你的远程服务器。

IPIP隧道如何从这里开始
我们的如何在DDoS过滤的VPS IP和远程服务器之间设置IPIP隧道的教程从这里开始。

按照下面的简单说明,您应该能够在20分钟内创建一个IPIP隧道。

支持的操作系统
可以使用Windows创建和转发IPIP隧道。如果您需要保护Windows服务器,请考虑购买KVM计划。

在本文档中,我们将只讨论LinuxIPIP隧道配置。

本指南将100%工作在我们的KVM和基于OpenVZ的计划上。

先决条件
安装在防DDoS VPS上的iptables(在大多数情况下已经包括在内)
iucte 2(几乎每一个最近的Linux发行版都包括在内)
支持IPIP的内核(Linux默认包括-ipip
内核模块)
需要转发到目的地的端口列表。
隧道设置
首先,我们需要建立我们的隧道。

在DDoS防御 VPS上,请执行以下命令:

echo ‘net.ipv4.ip_forward=1’ >> /etc/sysctl.conf
sysctl -p
iptunnel add ipip1 mode ipip local YOUR_FILTERED_IP remote DESTINATION_SERVER_IP ttl 255
ip addr add 192.168.168.1/30 dev ipip1
ip link set ipip1 up
在远程服务器上,您希望保护运行以下内容:

iptunnel add ipip1 mode ipip local DESTINATION_SERVER_IP remote YOUR_FILTERED_IP ttl 255
ip addr add 192.168.168.2/30 dev ipip1
ip link set ipip1 up
请注意每个更改的第一行,以标记本地和远程使用哪个IP。第2行记录每个端点。在A/30中,两个IP是可用的:1和2。

用平测试您的新IPIP隧道
在您的DDoS防御 vps上,您现在应该能够进行ping操作了

192.168.168.2
为了完整,测试敲击

192.168.168.1
从你的目标服务器。

设置源路由表
源路由条目需要确保通过IPIP隧道输入的数据被发送回IPIP隧道。

请在目的地服务器。

echo ‘100 BUYVM’ >> /etc/iproute2/rt_tables
ip rule add from 192.168.168.0/30 table BUYVM
ip route add default via 192.168.168.1 table BUYVM
请注意,echo命令只需要运行一次。该条目将保存到/etc/iucte 2/rt_table中,直到手动删除它为止。

初始NAT条目在IPIP隧道上移动数据
NAT用于通过我们的IPIP传输数据,并从另一端传送出去。

虽然可以使用基于KVM的VPS和购买/29分配,但本指南没有涵盖这一点。

在DDoS防御 VPS上运行以下命令:

iptables -t nat -A POSTROUTING -s 192.168.168.0/30 -j SNAT –to-source YOUR_FILTERED_IP
测试出站连接
在目标服务器上,您可以运行以下命令之一,以查看隧道是否正确地通过通信量:

curl http://www.cpanel.net/showip.cgi –interface 192.168.168.2
wget http://www.cpanel.net/showip.cgi –bind-address=192.168.168.2 -q -O –
IP转储应该是您的BuyVM过滤IP。

通过IPIP隧道转发端口
为了让事情变得简单,我们会继续前进全从我们过滤的IP到后端服务器的端口。如果愿意,可以将此规则更改为只转发某些端口。

请调整,并在DDoS防御 VPS上运行以下命令:

iptables -t nat -A PREROUTING -d YOUR_FILTERED_IP -j DNAT –to-destination 192.168.168.2
iptables -A FORWARD -d 192.168.168.2 -m state –state NEW,ESTABLISHED,RELATED -j ACCEPT
第一个规则设置实际的端口转发,第二个规则确保连接得到NAT,并正确匹配。

此时,您应该能够连接到YOUR_FILTERED_IP和目标端口与您的应用程序,并得到通过IPIP隧道,没有问题。

重启后重新启动IPIP隧道
你可以编辑/etc/rc.local使用您最喜欢的编辑器(甚至WinSCP),并将我们刚才运行的所有命令放在exit 0在底部。

您的选择发行版(如debian)可能在/etc/network/interfaces使您的IPIP隧道在启动时启动,但这不在本指南的范围之内。