vxlan vpn auf dem Gateway einrichten
als erstes die vxlan interfaces in /etc/network/interfaces../... anlegen:
auto vxbat0 iface vxbat0 inet manual pre-up ip l a dev $IFACE type vxlan id 7 dstport 8472 srcport 8472 8473 local 2a01:4f8:1c0c:70c4::2 pre-up ip l s dev $IFACE mtu 1422 post-up batctl -m bat0 if add $IFACE pre-down batctl -m bat0 if del $IFACE post-down ip l d dev $IFACE auto vxbat1 iface vxbat1 inet manual .... usw.
Achtung! port ist immer 8472. Nur id, local und die Interfaces anpassen
Jetzt braucht man noch das vxmon.sh Skript von hier(Link fehlt noch!!!!)
#!/bin/bash DEVS=$@ handle_add() { mac="${1:?}" dev="${2:?}" dst="${3:?}" echo "bridge fdb append 00:00:00:00:00:00 dst $dst dev $dev" bridge fdb append 00:00:00:00:00:00 dst "$dst" dev "$dev" } handle_cleanup() { mac="${1:?}" dev="${2:?}" dst="${3:?}" if ! bridge fdb show dev "$dev" | grep -v 00:00:00:00:00:00 | grep "$dst"; then bridge fdb del 00:00:00:00:00:00 dst "$dst" dev "$dev" fi } handle_entry() { cmd=handle_add if [ "$1" = "Deleted" ]; then shift cmd=handle_cleanup fi mac="${1:?}" dev="${3:?}" grep -w "$dev" <<<"$DEVS" || return if [ "$mac" = "00:00:00:00:00:00" ]; then echo "skipping" "$@" return fi $cmd "$mac" "$3" "$5" } bridge monitor fdb | while read args; do handle_entry $args done
Zum Starten des Skriptes kann man sich eine unit anlegen:
# cat /etc/systemd/system/vxmon.service [Unit] Description=vxlan monitoring to add peers Before=networking.service [Service] Type=simple EnvironmentFile=/etc/default/vxmon ExecStart=/usr/local/sbin/vxmon.sh $INTERFACES Restart=on-abort [Install] WantedBy=multi-user.target
Wie man sieht, können jetzt die Interfaces in /etc/default/vxmon eingetragen werden:
# cat /etc/default/vxmon # Hier alle vxlan interfaces eintragen. z.B # INTERFACES="vxbat0 vxbat2"
Batman
Um vxlan zu bevorzugen müssen wir noch was mit batman machen. (kommt noch)