18 нояб. 2010 г.

Настройка GRE-туннеля в linux

Чтобы не забыть, настройка GRE-туннеля к маршрутизатору Cisco в Debian Lenny со товарищи (секция в /etc/network/interfaces):
auth tun0
iface tun0 inet static
    address tunnel_local_ip
    netmask tunnel_mask
    up ifconfig tun0 multicast
    pre-up iptunnel add tun0 mode gre remote remote_ip local local_ip ttl 225
    pointopoint tunnel_remote_ip
    post-down iptunnel del tun0
где  tunnel_local_ip, tunnel_mask - адрес и маска подсети интерфейса этого компьютера внутри gre-туннеля ("ближний" конец, если угодно);
       remote_ip - внешний адрес удаленного маршрутизатора;
       local_ip - внешний адрес этого компьютера;
       tunnel_remote_ip - адрес удаленного маршрутизатора внутри gre-туннеля ("дальний" конец).
Очевидно, что  для установления этого типа туннеля адреса remote_ip и local_ip должны быть доступны и видимы друг другу. Также следует помнить, что протокол GRE не обеспечивает шифрования трафика внутри туннеля (так как имеет место простая инкапсуляция пакетов), поэтому использовать такой метод стоит лишь в доверенных сетях.