Puncte:1

VXLAN L3 peste Wireguard L3, cu mapare VLAN-VNI

drapel in

Sperând că acesta este locul potrivit - inițial am postat pe Network Engineering, dar s-a închis și am fost indicat către Server Fault.

În prezent, încerc să configurez o punte L2 între două site-uri folosind VXLAN pentru a oferi conectivitate L2 și Wireguard ca transport/L3. Am făcut anterior un pod Layer 2 ca acesta folosind GRE peste Wireguard și a fost solid, dar acum încerc să înțeleg mai bine VXLAN și caut să înlocuiesc tunelul GRE cu VXLAN.

Am încercat să folosesc ambele informații Aici și Aici dar pentru viața mea nu pot face ca traficul să treacă peste IP-urile non-wireguard între site-uri.

Am două mașini Debian cu bridge-utils instalat. De asemenea, rulează nftables cu reguli pentru a renunța la tot traficul DHCP, deoarece atunci când am configurat pentru prima dată tunelul GRE, am ajuns să primesc mașinile IP-uri atribuite de la rețeaua de la distanță. Dar orice altceva este setat să permită și este expus doar extern prin portul Wireguard

Gazda A este configurată cu:

Wireguard wg0 - 172.30.100.1/24
Pod br0 - 10.0.0.160/24

Gazda B este configurată cu:

Wireguard wg0 - 172.30.100.2/24
Pod br0 - 10.1.0.160/24

The IP-uri permise în configurațiile Wireguard este doar pentru subrețeaua Wireguard 172.30.100.0/24. Aceasta a funcționat cu configurația GRE și aș presupune că va funcționa și cu VXLAN, deoarece traficul VXLAN este încapsulat în tunelul Wireguard. Gazdele pot ping și ssh reciproc pe IP-urile lor Wireguard, astfel încât acel bit funcționează bine.

Ambele poduri au port ens18, bridge-vlan-aware da și bridge-vids 1-4096 în /etc/network/interfaces

Am un script bazat pe „Rețeta 2” de la primul link pe care l-am postat mai sus, adică un singur tunel cu mai multe VNI-uri. Ideea este că scriptul adaugă interfața VXLAN vx0 la br0, care așteaptă până după wg0 este activ (folosind un serviciu systemd), apoi face bucle pentru a face maparea VLAN/VNI.

#!/bin/bash

# Obține adresa IP a interfeței Wireguard.
wgip=`ip a s wg0 | egrep -o 'inet [0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3 }' | tăiați -d' '-f2`

link ip adăugați vx0 tip vxlan dstport 4789 extern local $wgip dev wg0 # creează vxlan cu wg0 IP ca local
#Iată unde s-ar putea să greșesc, dar am încercat diverse combinații ^^^

somn 1
ip link set dev vx0 master br0 # Adaugă vxlan la bridge
bridge link set dev vx0 vlan_tunnel on # Activează tunelul vlan pe vxlan

# Mapează fiecare VLAN la VNI-uri din tunel.
pentru vlan in 10 20 30; do
        bridge vlan add vid $vlan dev vx0
        bridge vlan add vid $vlan dev ens18
        bridge vlan add dev vx0 vid $vlan tunnel_info id $vlan

# Crezi că pot elimina linia de mai jos dacă trec la BGP-EVPN pentru a învăța mai târziu?
bridge fdb append 00:00:00:00:00:00 dev vx0 vni $vlan dst 10.1.0.160

Terminat

linkul ip setați dev vx0

S-ar putea să fiu complet pe drumul greșit aici, dar dacă există ceva care arată în mod neregulat în cele de mai sus, orice îndrumare în direcția corectă ar fi foarte apreciată!

(S-ar putea chiar să fie doar de la rutare, mai degrabă decât de configurare. Configurația Wireguard este setată la Table=off, ceea ce am făcut în configurația GRE/WG)

ACTUALIZAȚI Arata ca extern steag în vx0 linia de configurare provoacă drame. Dacă îl schimb în cele de mai jos și, de asemenea, schimb intrarea FDB statică la telecomandă wg0 IP mai degrabă decât telecomanda ens18 IP, pot da ping de la gazdă la gazdă:

link ip adăugați vx0 tip vxlan dstport 4789 vni 1000 local $wgip dev wg0

Apoi, se pare că traficul neetichetat trece prin VNI 1000, iar VID-urile 10, 20 și 30 sunt mapate la VNI-urile lor respective.

Ce face extern flag, asta ar împiedica configurația originală să funcționeze? Este lipsa cartografierii explicite a VID 1?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.