Comment mettre à jour mon fichier / etc / network / interfaces pour que la boîte affiche UNIQUEMENT une adresse auto-assignée IPv6?

8

Je m'excuse pour cette question manifestement novice, mais j'aimerais le faire "de la bonne façon" et ne pas me contenter de cela jusqu'à ce que cela semble fonctionner, et la documentation que j'ai ne semble pas aborder ce cas.

Actuellement, une boîte Debian Linux avec laquelle je travaille a le fichier / etc / network / interfaces suivant:

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

Ce qui précède fonctionne très bien et fait surtout ce que je veux - au démarrage, la boîte apparaît et les deux prises Ethernet sont utilisées pour le basculement / la redondance (c'est-à-dire que la boîte utilise la première prise pour les communications si elle fonctionne, sinon elle utilise le deuxième jack).

Cependant, pour mes besoins, je ne veux pas utiliser IPv4 ou DHCP. Je souhaiterais que la box propose bond0 en utilisant UNIQUEMENT l'adresse auto-assignée IPv6 de la box (ie fe80 :: que ce soit: c'est:) et aucune autre adresse IP (enfin ... le bouclage est correct). Quelle est la bonne façon de spécifier cela? Dois-je remplacer «iface bond0 inet dhcp» par «iface bond0 inet6»? Supprimer cette ligne complètement? Autre chose? Idéalement, j'aimerais pouvoir utiliser exactement le même fichier sur plusieurs boîtes sans le modifier pour chacune, btw.

Jeremy Friesner
la source

Réponses:

5

Je n'ai pas d'expérience avec votre périphérique de liaison particulier, mais j'ai essayé le test suivant dans une machine virtuelle sur Debian Lenny avec une seule carte réseau ( eth0). Dans /etc/network/interfaces:

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

Après avoir parlé eth0, voici ce que je retire de /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
           ...

J'ai donc une adresse IPv6 Link-local (dérivée de l'adresse MAC) et aucune adresse IPv4. Je suis capable d' ping6une autre machine sur mon réseau local par son adresse Link-local, et vice versa, donc l'interface semble fonctionner.

Donc, pour résumer: Essayez de définir la ifaceligne de votre bond0interface pour:

iface bond0 inet manual

et ajoutez cette ligne à la fin de sa strophe de configuration:

up /sbin/ifconfig bond0 0.0.0.0

Je n'ai aucune idée si c'est "la bonne façon" de le faire, mais cela fonctionne pour mon cas simplifié.

Steven Monday
la source
Merci, cela semble avoir fait l'affaire (j'ai substitué bond0 à eth0, bien sûr). :) Il semble que la ligne "up / sbin / ifconfig bond0 0.0.0.0" ne soit pas nécessaire (il semble que j'obtienne le résultat que je veux sans). Y a-t-il une raison subtile de l'avoir? Qu'est-ce que cela signifie de monter une interface vers une adresse non valide 0.0.0.0?
Jeremy Friesner
Heureux que cela ait fonctionné pour vous. Vous n'aviez probablement pas besoin de cette up ... 0.0.0.0ligne car votre strophe de configuration pour bond0n'était pas encore vide. Dans mon test, je devais mettre quelque chose après la ifaceligne, car sinon, ifup eth0je ne parviendrais pas en silence eth0. La définition de l'adresse IPv4 sur 0.0.0.0 revient essentiellement à supprimer l'adresse, ce qui est l'effet souhaité dans ce cas.
Steven lundi
4

Vous ne voulez vraiment pas faire votre configuration de liaison à la main ... utilisez plutôt les paramètres de configuration spécifiques à la liaison disponibles:

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

Le manualsur la ifaceligne signifie qu'aucune configuration explicite des attributs de niveau IP / IPv6 de l'interface ne sera configurée.

womble
la source