Настройка GRE интерфейсов

Для добавления GRE туннелей в систему, нужно создать два интерфейса в режиме gre.

В данном сценарии адреса для туннельных интерфейсов будут назначаться из подсети 100.100.101.0/30 для первого GRE туннеля и из подсети 100.100.102.0/30 для второго GRE туннеля.

1.    Создайте файл /etc/network/interfaces.d/tunnel1 со следующим содержимым:

auto tunnel1

iface tunnel1 inet static

address 100.100.101.1

netmask 255.255.255.252

 

pre-up ip tunnel add tunnel1 mode gre local 10.10.100.1 remote 10.10.1.1 ttl 64

pre-up ip link set tunnel1 multicast on

pre-up ip link set tunnel1 mtu 1400

 

post-down ip link del tunnel1

2.    Создайте файл /etc/network/interfaces.d/tunnel2 со следующим содержимым:

auto tunnel2

iface tunnel2 inet static

address 100.100.102.1

netmask 255.255.255.252

 

pre-up ip tunnel add tunnel2 mode gre local 10.10.100.2 remote 10.10.1.2 ttl 64

pre-up ip link set tunnel2 multicast on

pre-up ip link set tunnel2 mtu 1400

 

post-down ip link del tunnel2

3.    Включите интерфейсы tunnel1 и tunnel2:

root@Hub-Router:~# ifup tunnel1

root@Hub-Router:~# ifup tunnel2

4.    Убедитесь, что данные интерфейсы доступны в системе и им назначены IP-адреса, например, в выводе команды ip a:

root@Hub-Router:~# ip a

...

10: tunnel1@NONE: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1400 qdisc noqueue state UNKNOWN group default qlen 1000

    link/gre 10.10.100.1 peer 10.10.1.1

    inet 100.100.101.1/30 brd 100.100.101.3 scope global tunnel1

       valid_lft forever preferred_lft forever

11: tunnel2@NONE: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1400 qdisc noqueue state UNKNOWN group default qlen 1000

    link/gre 10.10.100.2 peer 10.10.1.2

    inet 100.100.102.1/30 brd 100.100.102.3 scope global tunnel2

       valid_lft forever preferred_lft forever

...