FreeBSD : tunnel gif ( ipip )

Update : 03/02/2020

Bonjour à tous,

Un petit billet rapide sur comment faire un tunnel gif.

Alors, pourquoi un gif et pas un gre? tout simplement car gre ne sait pas monter via des IPv6 pour les endpoint (sous FreeBSD tout du moins).

IPv6 :

noeud 1 : 2a0e:f41:0:1::3
noeud 2 : 2a0e:f41:0:1::2

Il faut créer l'interface sur dédiée sur chaque noeud:

ifconfig gif0 create

Sur chaque noeud, il faut créer le tunnel en lui donnant l'adresse IP à utiliser et celle à laquelle se connecter.

noeud 1 -> noeud 2 :

ifconfig gif0 inet6 tunnel 2a0e:f41:0:1::2 2a0e:f41:0:1::3

noeud 2 -> noeud 1 :

ifconfig gif0 inet6 tunnel 2a0e:f41:0:1::2 2a0e:f41:0:1::3

noeud 1 -> noeud 2 :

ifconfig gif0 inet 172.16.57.2 172.16.57.1 netmask 255.255.255.0

noeud 2 -> noeud 1 :

ifconfig gif0 inet 172.16.57.1 172.16.57.2 netmask 255.255.255.0

et voilà! Cela n'est pas plus compliqué, par contre attention! pas de chiffrement.

Petit complément d'information : le tunnel étant monté via IPv6, le débit sera moindre car chez Free, l'IPv6 est encapsulée dans de l'IPv4 ce qui fait une double encapsulation.
En temps normal, un débit de 2.4Mo/sec, via ce tunnel que 1.7Mo/sec.

Pour que le tunnel soit permanent, il faut ajouter ce qui suit au fichier /etc/rc.conf :

cloned_interfaces="gif0"
ifconfig_gif0="inet6 tunnel 2a0e:f41:0:1::2 2a0e:f41:0:1::3 up"
ifconfig_gif0_alias0="inet 172.16.57.1 172.16.57.2 netmask 255.255.255.0"

Et si vous voulez avoir de l'IPV6 sur ce tunnel :

ifconfig_gif0_ipv6="inet6 2a0e:f41:0:3::1 prefixlen 64"

Pour appliquer les modifications sans avoir à redémarrer :

/etc/rc.d/netif restart gif0

Have a nice day.