Здравствуйте. Возникла задача поднятия GRE туннеля между двумя серверами. Задача состоит в том, чтобы один из адресов, зароученных на первый сервер, «телепортировать» на второй сервер с целью защиты его от DDoS-атак на первом сервере. В интернете есть мануал, как сделать это методом ip-ip туннеля, но tun модуль не отличается производительностью, вследствие чего я решил прибегнуть к GRE. OS на обоих серверах Debian Wheezy. Это abstract, а для начала я хотел бы просто поднять gre между этими серверами без телепортирования внешних ip-адресов. Но и эта задача у меня не удалась. Итак, модуль ip_gre загружен на обеих машинах. На первой машине в /etc/network/interfaces следующее:
auto tun0
iface tun0 inet static
address 10.10.10.1
netmask 255.255.255.0
pointopoint 10.10.10.2
pre-up modprobe ip_gre
pre-up iptunnel add tun0 mode gre local $server1_ip remote $server2_ip ttl 255
up ifconfig tun0 multicast
post-down iptunnel del tun0
auto tun0
iface tun0 inet static
address 10.10.10.2
netmask 255.255.255.0
pointopoint 10.10.10.1
pre-up modprobe ip_gre
pre-up iptunnel add tun0 mode gre local $server2_ip remote $server1_ip ttl 255
up ifconfig tun0 multicast
post-down iptunnel del tun0
tun0: gre/ip remote $server2_ip local $server1_ip ttl 255
gre0: gre/ip remote any local any ttl inherit nopmtudisc
10.10.10.2 dev tun0 proto kernel scope link src 10.10.10.1
tun0 Link encap:UNSPEC HWaddr 1F-D6-8A-45-30-30-3A-30-00-00-00-00-00-00-00-00
inet addr:10.10.10.1 P-t-P:10.10.10.2 Mask:255.255.255.255
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:37 errors:0 dropped:0 overruns:0 carrier:0
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:3 dropped:0 overruns:0 carrier:3