Come faccio ad aggiornare il mio file / etc / network / interfaces in modo che la scatola visualizzi SOLO l'indirizzo auto-assegnato IPv6?


8

Mi scuso per questa palesemente nuova domanda, ma mi piacerebbe fare questo "nel modo giusto" e non limitarmi a farlo finché non sembra funzionare, e la documentazione che ho non sembra occuparsi di questo caso.

Attualmente, un box Debian Linux con cui sto lavorando ha il seguente file / etc / network / interfaces:

auto lo
iface lo inet loopback
auto bond0
iface bond0 inet dhcp
pre-up modprobe bonding mode=active-backup miimon=100 primary=eth0
pre-up ip link set bond0 up
pre-up /sbin/ifenslave bond0 eth0
pre-up /sbin/ifenslave bond0 eth1

Quanto sopra funziona bene e principalmente fa quello che voglio - all'avvio, la scatola viene visualizzata e le due prese Ethernet vengono utilizzate per il failover / ridondanza (ovvero la scatola utilizza il primo jack per le comunicazioni se funziona, altrimenti utilizza il secondo jack).

Tuttavia, per i miei scopi non voglio usare IPv4 o DHCP. Vorrei che la scatola venisse fuori con bond0 usando SOLO l'indirizzo auto-assegnato IPv6 della scatola (es. Fe80 :: qualunque cosa: è:) e nessun altro indirizzo IP (beh ... il loopback va bene). Qual è il modo corretto di specificarlo? Dovrei cambiare "iface bond0 inet dhcp" in "iface bond0 inet6"? Rimuovere completamente quella linea? Qualcos'altro? Idealmente, vorrei essere in grado di utilizzare lo stesso file esatto su più caselle senza modificarlo per ognuno, tra l'altro.

Risposte:


5

Non ho esperienza con il tuo particolare dispositivo di collegamento, ma ho provato il seguente test in una macchina virtuale su Debian Lenny con una singola scheda di rete ( eth0). In /etc/network/interfaces:

auto eth0
iface eth0 inet manual
    up /sbin/ifconfig eth0 0.0.0.0

Dopo aver richiamato eth0, ecco cosa ottengo da /sbin/ifconfig eth0:

eth0       Link encap:Ethernet  HWaddr 08:00:27:15:8e:d7
           inet6 addr: fe80::a00:27ff:fe15:8ed7/64 Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           ...

Quindi ho un indirizzo IPv6 Link-local (derivato dall'indirizzo MAC) e nessun indirizzo IPv4. Sono in grado di accedere a ping6un'altra macchina sulla mia rete locale tramite il suo indirizzo Link-local e viceversa, quindi l'interfaccia sembra funzionare.

Quindi, per riassumere: prova a impostare la ifacelinea per la tua bond0interfaccia su:

iface bond0 inet manual

e aggiungi questa riga alla fine della sua stanza di configurazione:

up /sbin/ifconfig bond0 0.0.0.0

Non ho idea se questo sia "il modo giusto" per farlo, ma funziona per il mio caso semplificato.


Grazie, questo sembra aver fatto il trucco (ho sostituito bond0 con eth0, ovviamente). :) Sembra che la riga "up / sbin / ifconfig bond0 0.0.0.0" non sia necessaria (mi sembra di ottenere il risultato desiderato senza di essa). C'è qualche ragione sottile per averlo? Che cosa significa comunque avere un'interfaccia con indirizzo non valido 0.0.0.0?
Jeremy Friesner,

Sono contento che questo abbia funzionato per te. Probabilmente non hai bisogno di quella up ... 0.0.0.0linea perché la tua stanza di configurazione per bond0era già non vuota. Nel mio test, avevo bisogno di mettere qualcosa dopo la ifacelinea, perché altrimenti non ifup eth0sarebbe riuscito a sollevare in silenzio eth0. L'impostazione dell'indirizzo IPv4 su 0.0.0.0 equivale sostanzialmente alla rimozione dell'indirizzo, che in questo caso è l'effetto desiderato.
Steven lunedì

4

Non vuoi davvero fare la configurazione del tuo bond manualmente ... usa invece i parametri di configurazione specifici del bonding disponibili:

iface bond0 inet6 manual
    slaves eth0 eth1
    bond_mode active_backup
    bond_miimon 100
    bond_primary eth0

Il manualsui ifacemezzi di linea che nessuna configurazione esplicita del IPv6 a livello IP / attributi dell'interfaccia sarà configurato.

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.