GNU/Linux >> Linux Esercitazione >  >> Linux

OpenBSD:gateway esterno alla sottorete (funziona in Linux)

Questo è un vecchio thread, ma qui va.

Si dà il caso che esegua un certo numero di macchine virtuali OpenBSD su un ESXi 6.0 in esecuzione presso SoYouStart, una società figlia di OVH. L'impostazione della rete è la stessa di OVH e penso che, sebbene strano, il suo scopo principale sia eliminare il più possibile il traffico ARP limitando artificialmente i domini di trasmissione e senza la necessità di utilizzare le VLAN, ad esempio.

Nel mio caso, ho richiesto indirizzi IP aggiuntivi a OVH e provengono da un range completamente diverso. Per la discussione qui, supponiamo che queste siano le mie impostazioni:

  • il mio indirizzo IP principale (utilizzato dall'host ESXi):213.0.113.78/32
  • l'intervallo di indirizzi IP extra per i guest VM:192.0.2.64/30
  • il gateway predefinito per TUTTO quanto sopra:213.0.113.254
  • nota:tutti gli host devono utilizzare una netmask host (255.255.255.255) a causa del modo in cui è configurata la rete OVH

Per configurare il routing sull'host OpenBSD, questo è ciò che devo fare:

ifconfig vmx0 inet 192.0.2.64 255.255.255.255 
route add -inet 213.0.113.254 -llinfo -link -static -iface vmx0 
route add -inet default 213.0.113.254

Per fare tutto questo all'inizio, ignoro il /etc/mygate file e inserire quanto segue nel /etc/hostname.vmx0 :

inet 192.0.2.64 255.255.255.255
!sleep 2
!route add -inet 213.0.113.254 -llinfo -link -static -iface vmx0
!route add -inet default 213.0.113.254

Noterai il sleep comando - per qualche motivo questo è richiesto su OpenBSD 5.9 ma non lo era prima. Senza il sleep , il primo dei to route i comandi non verranno eseguiti e quindi il tuo routing non sarà configurato correttamente.

Funziona usando il seguente trucco:

  • configuriamo l'indirizzo IP sull'interfaccia
  • con il primo route comando traduciamo l'indirizzo IP del gateway (213.0.113.254) in un indirizzo di collegamento (indirizzo MAC); questo viene fatto dal -llinfo opzione;
  • nello stesso route comando, utilizzando il comando -link opzione, installiamo l'indirizzo del collegamento alla tabella di instradamento e utilizzando il -iface vmx0 diciamo al kernel tramite quale interfaccia di rete è raggiungibile quell'indirizzo di collegamento; il -static switch lo contrassegna come una voce inserita manualmente nella tabella di routing
  • il secondo route il comando ora può avere successo, poiché il percorso verso il gateway predefinito è ora noto

Una cosa che ho riscontrato nella configurazione sopra, per la quale non ho ancora una soluzione, è che uno dei quattro host OpenBSD, configurato esattamente nello stesso modo, esegue la stessa identica versione del sistema operativo e la stessa identica build del kernel, e anche in esecuzione sullo stesso host VMware, ogni 24 ore circa, sembra "perdere" quel percorso magico dalla sua tabella di routing...


Linux
  1. Linux – I diversi kernel Linux/unix sono intercambiabili?

  2. Come trovare l'IP del gateway predefinito in Linux

  3. Routing IP:Flag di instradamento Linux (U – Su, G – Gateway, H – Host)

  4. Come funziona SSH senza password in Linux / UNIX

  5. Ottieni il nome utente corrente in Julia (Linux)

Riporta in vita il vecchio hardware con OpenBSD

Comando di aggiunta route Linux con esempi

ipcalc – Calcola l'indirizzo di sottorete IP in Linux

Come funziona il programma ping in Linux

Come interpretare i messaggi sorgente marziani di Linux

route Esempi di comandi in Linux