GRE туннель. FreeBSD

FreeBSD из «коробки» полность поддерживает GRE и автоматически добавит его в ядро, но если хочется перестраховаться можно всегда добавить ниже указанную строку в /boot/loader.conf

if_gre_load="YES"
# или
echo 'if_gre_load="YES"' >> /boot/loader.conf

Из консоли туннель подымается следующими командами:

ifconfig gre0 create 
ifconfig gre0 10.1.10.1 10.1.10.2 netmask 255.255.255.252 
ifconfig gre0 tunnel 100.0.2.1 100.0.1.1
# где 10.1.10.0/30 IP внутри туннеля
# 100.0.0.0 адреса серверов для пиринга

Для автозапуска туннеля нужно добавить в /etc/rc.conf следующие строчки:

cloned_interfaces="gre0" 
ifconfig_gre0="inet 10.1.10.1 10.1.10.2 netmask 255.255.255.252 tunnel 100.0.2.1 100.0.1.1"

Как обычно туннель при отсутствии активности падает, потому для поддержания туннеля в поднятом состоянии добавляем в крон:

*/1  *  *  *  *  root  ping -c 10 10.1.10.2

FreeBSD в отличии от Ubuntu равнодушно относится к отсутствию пустых строк в конце cron файла, поэтому оставлять пустую строку или нет — ваше личное дело