Am mai multe gazde Linux care sunt conectate folosind vxlan. Să le numim Host A, Host B și Host C. Configurația de pe fiecare gazdă este similară cu aceasta:
# Definiți o punte:
cat << EOF > /etc/sysconfig/network-scripts/ifcfg-cloudbr0
DEVICE=cloudbr0
TYPE=Pont
ONBOOT=da
BOOTPROTO=static
IPV6INIT=nu
IPV6_AUTOCONF=nr
ÎNTÂRZIERE=5
STP=nu
USERCTL=nu
NM_CONTROLLED=nu
IPADDR=192.168.200.1
NETMASK=255.255.255.0
DNS1=10.10.0.2
EOF
# Citiți fișierul de configurare de mai sus și creați puntea
systemctl reporniți rețeaua
# VXLAN
link ip adăugați vxlan100 tip vxlan id 100 dstport 4789 local 10.10.128.84 grup 224.10.0.1 dev eth0 ttl 5
brctl addif cloudbr0 vxlan100
Configurați legătura IP dev vxlan100
Rezultatul este că gazdele A, B și C au fiecare două adrese IP, una publică (pe subrețeaua 10.10.0.0/16) și una privată (pe subrețeaua 192.168.200.0/24). Adresa privată este vizibilă numai pentru celelalte gazde configurate cu vxlan. Gazdele A, B și C pot trimite ping reciproc adreselor publice și private.
În continuare, trebuie să dau unor gazde suplimentare (gazde D, E și F) acces la subrețeaua vxlan fără a le conecta efectiv la subrețea. Deci, caut un fel de soluție de rutare de nivel 3.
Am activat redirecționarea IP pe gazda A, apoi am actualizat tabelele de rutare corespunzătoare pentru a oferi gazdelor D, E și F rute la 192.168.200.0/24 prin Gazda A. Acest lucru a permis gazdelor D, E și F să pună ping pe Gazda A folosind fie adrese publice sau private, dar nu pot ajunge la niciuna dintre celelalte adrese vxlan. Din anumite motive, gazda A nu redirecționează traficul în subrețeaua vxlan (sau răspunsurile nu primesc înapoi).
Care este cea mai bună modalitate de a configura rutarea layer 3 în/out din subrețeaua vxlan?