Cercando di capire il modo corretto di creare una route statica in CentOS, ti preghiamo di aiutarti


8

Ho cercato di capire qual è il modo corretto di aggiungere una route statica su una macchina CentOS 6.x. In alcuni forum dicono di creare un file chiamato route-dev_name(ad esempio route-eth0) con il percorso pertinente e inserirlo in /etc/sysconfig/network-scripts, in alcuni forum dicono che il file dovrebbe essere nominato static-routes, in entrambi i casi non sono in grado di impostare un percorso statico. Sembra che in alcune versioni di CentOS funzioni solo quando si denomina il file route-dev_namee in alcune funziona solo quando si nomina il file static-routes.. Qualcuno può aiutarmi per favore? Questo è il contenuto del mio file di percorso:

192.168.20.0/24 via 192.168.20.253 dev eth0

Grazie in anticipo


Sto usando diverse versioni di CentOS su server diversi, ma principalmente CentOS 6.3-6.5
Itai Ganot,

Risposte:


7

I percorsi dipendenti dal dispositivo in stile RH definiti utilizzando i /etc/sysconfig/network-scripts/route-devicefile hanno causato molti problemi.

Quindi i veri amministratori di sistema usano solo /etc/sysconfig/static-routesfile senza dipendenza del dispositivo:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1

I problemi:

  • Quando i dispositivi fisici sono collegati, è necessario ricordare anche la possibilità di instradare il file del dispositivo
  • Quando si riorganizzano gli adattatori in una macchina virtuale.

Naturalmente si dovrebbero sempre usare i dispositivi bridge , quindi si potrebbero evitare problemi con i file route- device .

Notare anche la sintassi nel /etc/sysconfig/static-routesfile, sniplet da /etc/init.d/network:

    # Add non interface-specific static-routes.
    if [ -f /etc/sysconfig/static-routes ]; then
       if [ -x /sbin/route ]; then
           grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
               /sbin/route add -$args
           done
       else
           net_log $"Legacy static-route support not available: /sbin/route not found"
       fi
    fi

8

Crea un file in / etc / syconfig / network-scripts / route-eth0

aggiungi aggiungi quanto segue

192.168.20.0/24 via 192.168.20.253 dev eth0

Ho sempre usato questo approccio. Ho trovato che questo è l'approccio migliore.

Cordiali saluti: Verifica - https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s1-networkscripts-static-routes.html


1
Va bene, questo è l'approccio che ho usato fino ad ora, ma recentemente su macchine CentOS 6.5 trovo che il route-devXfile venga ignorato e che i server non siano in rotta quando il server viene riavviato o il servizio di rete viene riavviato, qualsiasi idea cosa potrebbe causarlo?
Itai Ganot,

Non sono sicuro .. L'interfaccia si presenta all'avvio / riavvio? .. Non ho un ATM ATMOS box di test CENTOS / RHEL 6.5 .. Non sono sicuro che ci siano cambiamenti nei percorsi ifup su RHEL 6.5.
vijay rajah,

Sì, le interfacce funzionano correttamente ... solo il percorso non sta arrivando e sto parlando di una macchina appena installata o di circa 2-3 mesi. Ad ogni modo, vedo che utilizzo l'approccio corretto, quindi accetterò la tua domanda, grazie.
Itai Ganot,

4

C'è un modo più semplice per aggiungere percorsi ...

Questo file - /etc/init.d/network- viene avviato all'avvio del PC e utilizza un file /etc/sysconfig/static-routesper aggiungere percorsi statici

Devi crearlo perché non esiste.

Se leggi attentamente il file /etc/init.d/network, esso legge in questo file ogni riga per aggiungere rotte, tali righe devono iniziare con "qualsiasi" e "route add -" è già noto.

Quindi nel file che stai per creare >> / etc / sysconfig / static-route, devi scrivere:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1 eth0
  • dove 10.0.0.0/24 è la rete che si desidera raggiungere (255.255.255.0 è la maschera)
  • dove gw 192.168.0.1 è il gateway da raggiungere (sicuramente il router)
  • dove eth0 è l'interfaccia dove utilizzare.

Questo è il modo migliore per aggiungere route statiche, 1 file per tutto (non file X per interfacce X)


1

Uso sempre l' route-ethXapproccio file sul mio CentOS 6.4 e 6.5:

Crea / modifica file /etc/sysconfig/network-scripts/route-ethX(dove X è il tuo numero di interfaccia) e imposta il tuo percorso in questo file:

192.168.20.0/24 via 192.168.20.253 dev eth0

Puoi anche modificare questo file usando il seguente formato (personalmente preferisco la prima sintassi):

GATEWAY0=192.168.20.253
NETMASK0=255.255.255.0
ADDRESS0=192.168.20.0

Quindi riavviare la rete per applicare le modifiche:

service network restart

Ulteriori letture: https://www.centos.org/docs/5/html/5.2/Deployment_Guide/s1-networkscripts-static-routes.html


0

In / etc / sysconfig / network-scripts c'è uno script ifup-route . Cerca i file con il nome route-dev_name, ad esempio route-eth0.


0

Nel mio caso il file " / etc / sysconfig / network-scripts / route-device " non esisteva.

Procedo ad aggiungere la rete o l'ip richiesti al file " / etc / sysconfig / static-route " e per renderlo permanentemente, ho riavviato la macchina e si è rivelato funzionante come previsto.

è stato fatto in un: cat /etc/centos-release CentOS Linux release 7.5.1804 (Core)

I migliori saluti,

Manuel Lazo

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.