secondo indirizzo IP sulla stessa interfaccia ma su una sottorete diversa


10

In CentOS 5.7 64 bit è possibile avere un secondo indirizzo IP su un'interfaccia (es. Eth0) - configurazione dell'interfaccia alias - in una sottorete diversa?

Ecco la configurazione originale per eth0

more etc/sysconfig/network-scripts/ifcfg-eth0
# Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.91.255
HWADDR=00:1D:09:FE:DA:04
IPADDR=192.168.91.250
NETMASK=255.255.255.0
NETWORK=192.168.91.0
ONBOOT=yes

Ed ecco la configurazione per eth0: 0

more etc/sysconfig/network-scripts/ifcfg-eth0:0
# Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=10.10.191.255
DNS1=10.10.15.161
DNS2=10.10.18.36
GATEWAY=10.10.191.254
HWADDR=00:1D:09:FE:DA:04
IPADDR=10.10.191.210
NETMASK=255.255.255.0
NETWORK=10.39.191.0
ONPARENT=yes

Come dovrebbe cambiare il file resolv.conf poiché ci sono due gateway diversi? Qualche altro cambiamento necessario?

Risposte:


4

È possibile avere un secondo indirizzo IP su un'interfaccia (es. Eth0) - configurazione dell'interfaccia alias - in una sottorete diversa?

Certo, niente ti impedisce di farlo. Le interfacce di rete vedranno le trasmissioni per le altre due sottoreti, ma questo probabilmente non farà una grande differenza a meno che tu non abbia una rete molto occupata.

Come dovrebbe cambiare il file resolv.conf poiché ci sono due gateway diversi? Qualche altro cambiamento necessario?

Non è possibile avere 2 gateway predefiniti. Rimuovere un gateway da una di quelle interfacce. Avere 2 come quello semplicemente non farà nulla di utile. Verrà utilizzato solo uno dei gateway.

La risoluzione DNS (resolv.conf) non ha davvero nulla a che fare con la configurazione del routing. Su Linux la risoluzione DNS è estesa al sistema e non ha assolutamente nulla a che fare con la configurazione dell'interfaccia. Posiziona solo un paio di server DNS validi nel tuo resolv.conf. Se hai bisogno di qualcosa di più avanzato per inviare alcune richieste a diversi server upstream, potresti dover installare qualcosa come DNSMasq.


Mi chiedevo, devo specificare un gateway per ifcfg-eth0 e uno per ifcfg-eth0: 0? [dal momento che ognuno di loro dovrebbe essere su una sottorete diversa?
fptstl

2

Come già accennato, non c'è nulla di sbagliato ad avere due sottoreti diverse su una rete e funzionerà finché si è connessi allo stesso gruppo switch / switch per entrambe le reti e non si applicano regole VLAN ad essa o qualsiasi altra sicurezza zone.

Indipendentemente dal numero di indirizzi IP / subnet presenti, esiste sempre un solo gateway predefinito. Un gateway predefinito viene utilizzato quando un indirizzo IP non corrisponde ad altre route nella tabella di routing. Quindi nel tuo esempio per ogni richiesta che non fa parte della rete 192.168.91.0/24 o 10.10.191.0/24 verrà reindirizzata al gateway predefinito.

Ma se lo desideri, puoi comunque aggiungere percorsi manuali. Supponiamo quindi che tu abbia una terza rete privata 10.10.200.0/24, che è accessibile fino al 10.10.191.0/24. Devi aggiungere una route statica:

ip route add 10.10.200.0/24 via 10.10.191.254 dev eth0:0

Resolv.conf non ha nulla a che fare con il gateway e viene utilizzato per i resolv DNS. Avere un Leggi qui per ulteriori informazioni.


0

Normalmente il file /etc/resolv.conf è un file di configurazione per l'opzione relativa al DNS (nameserver, dominio di ricerca, ecc). In una distribuzione basata su Red Hat ti suggerirò di creare due file:

/ etc / sysconfic / script-di rete / route-eth0
/ etc / sysconfic / script di rete / route-eth0: 0 (non l'ho mai visto)

In ognuno di essi è possibile definire tutte le opzioni di percorso per l'interfaccia specifica.

Questo non è corretto Sebbene sia accettabile sui sistemi RHEL / CentOS la gestione delle interfacce Ethernet in più file, il routing viene gestito in modo diverso. Le rotte per un'interfaccia specifica devono essere collocate collettivamente in un singolo file per quell'interfaccia. In altre parole, se hai bisogno di percorsi personalizzati per eth0: 1, eth0: 2 e eth0: 3, devono essere tutti inseriti in:

/etc/sysconfig/network-script/route-eth0

Niente di simile: 1 può essere aggiunto al nome del file.

Una risposta precedente suggeriva di creare un file per la nuova interfaccia:

/etc/sysconfig/network-scripts/ifcfg-eth0:1 

Questo è corretto, ma non dovresti inserire la direttiva GATEWAY = in essa. Ciò comporterà la creazione di diversi gateway predefiniti che causano il malfunzionamento del routing. Esci dall'opzione GATEWAY = e aggiungi il percorso richiesto a:

/etc/sysconfig/network-script/route-eth0

1
Sembra che tu stia cercando di commentare un'altra risposta piuttosto che rispondere alla domanda. È necessario modificare la risposta per concentrarsi sulla risposta alla domanda.
Kasperd,

0

Normalmente il file /etc/resolv.conf è un file di configurazione per l'opzione relativa al DNS (nameserver, dominio di ricerca, ecc). In una distribuzione basata su Red Hat ti suggerirò di creare due file:

/etc/sysconfig/network-script/route-eth0  
/etc/sysconfig/network-script/route-eth0:0  (I have not ever seen this)

In ognuno di essi è possibile definire tutte le opzioni di percorso per l'interfaccia specifica. La regola inserita in questi verrà caricata all'avvio. Si consiglia di posizionare il gateway predefinito in / etc / sysconfig / file di rete.

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.