GRE-tunnel в Linux
Туннель, может обеспечить возможность передачи зашифрованной передачи данных между офисом или домашней сетью.
GRE — протокол туннелирования сетевых пакетов, разработанный компанией Cisco Systems. Его основное назначение — инкапсуляция пакетов сетевого уровня сетевой модели OSI в IP-пакеты.
В данном примере мы будем использовать скрипты для создания туннеля. Перед настройкой убедитесь, что вы настроили маршрутизацию.
Создание скрпита для gre.
#vi /etc/gre.s
#!/bin/bash ip tunnel tun0 mode gre local 10.10.10.1 remote 20.20.20.100 ttl 250 ip link up tun0 ip addr add 10.5.5.1/30 peer 10.5.5.2/30 dev tun0
Где: ip tunnel - Название для тунннеля; mode - Режим работы туннеля; local - IP-адрес интерфейса, который смотрит в сторону другой части туннеля; remote - IP-адрес интерфейса на другой машине, который смотрит в эту сеть; ttl - Время жизни пакетов. (объязательный пункт); ip link up - Поднять интерфейс. (включить); ip addr add - Добавить IP-адрес первой части туннеля; peer - Указать вторую часть туннеля. dev - Через какой интерфейс будет идти трафик.
Настройка прав для скрипта.
#chmod +x /etc/gre.s
Добавление скрипта в автозагрузку.
#vi /etc/rc.local
#!/bin/sh -e
/etc/gre.s
exit 0
Добавление прав для автозагрузки.
#chmod ugo+x /etc/rc.local
С другой стороны такой же скрипт.
#!/bin/bash ip tunnel tun0 mode gre local 20.20.20.100 remote 10.10.10.1 ttl 250 ip link up tun0 ip addr add 10.5.5.2/30 peer 10.5.5.1/30 dev tun0