Dies ist möglicherweise eine ungewöhnliche Anfrage: Ich versuche, eine Debian Linux-Box dazu zu bringen, sich beim Booten immer eine selbst zugewiesene IP-Adresse (dh 169.254.xy) zu geben. Insbesondere möchte ich, dass dies auch dann der Fall ist, wenn im LAN ein DHCP-Server vorhanden ist . Das heißt, es sollte keine IP-Adresse vom DHCP-Server angefordert werden.
Nach dem, was ich im Text "man interfaces" sehen kann, gibt es eine Option für "manual" und eine Option für "dhcp". Die manuelle Zuweisung reicht nicht aus, da ich mehrere Boxen benötige, um im selben LAN zu arbeiten, ohne dass eine manuelle Konfiguration erforderlich ist ... und "dhcp" macht, was ich will, aber nur, wenn sich kein DHCP-Server im LAN befindet. (Voraussetzung ist, dass die Funktionalität dieser Boxen nicht durch das Vorhandensein oder Fehlen eines DHCP-Servers beeinträchtigt wird.)
Gibt es einen Trick, mit dem ich dieses Verhalten feststellen kann?
BEARBEITEN: Mit "keine manuelle Konfiguration" meine ich, dass ich in der Lage sein sollte, diese Box (ohne Kopf) überall in ein beliebiges LAN zu bringen, das Ethernet-Kabel anzuschließen und sie ihre Sache machen zu lassen. Ich sollte nicht in die Box ssh und Dateien bearbeiten müssen, damit es jedes Mal funktioniert, wenn es in ein anderes LAN verschoben wird.
avahi-*
Pakete. Zancheys Antwortavahi-autoipd
ist ein Ausgangspunkt. Es gibt auch eine Debian ZeroConf Wiki-Seite .Antworten:
Wenn Sie das
avahi-autoipd
Paket installieren und mit der--force-bind
Option in einem benutzerdefinierten init- oder if-up.d-Skript ausführen, erhalten Sie immer eine linklokale Adresse.Sie können sie dann
iface eth0 inet manual
in Ihrer Interfaces (5) -Datei verwenden, obwohl Sie sie bearbeiten müssen/etc/network/if-up.d/avahi-autoipd
, um siemanual
zu den Methodenzeilen hinzuzufügen .Weitere Informationen zu avahi-autoipd finden Sie im Avahi-Wiki.
Persönlich würde ich
/etc/network/if-up.d/avahi-autoipd
mit so etwas wie bearbeiten :Sie können dann Schnittstellen als auflisten
iface eth0 inet linklocal
. Die Änderungen, die amif-down.d
Skript vorgenommen werden müssen, bleiben dem Leser als Übung überlassen.quelle
Möglicherweise haben Sie dies verpasst in
man interfaces
:Sie hätten also einen
interfaces
Abschnitt als solchen:Installieren
avahi-autoipd
, und das sollte es tun.quelle
Ich denke, was Sie suchen, ist Zeroconf .
quelle
interfaces(5)
Datei auf einstelleniface eth0 inet manual
oder etwas wie das folgende Skript ausführen .Niemand hat es bisher erwähnt, daher möchte ich nur darauf hinweisen, dass Sie, wenn Sie die Kontrolle darüber haben, wie die Maschine startet, den Standardeintrag in GRUBs menu.lst (oder wie auch immer es diese Woche heißt) bearbeiten können, um einen "nodhcp" -Cheatcode hinzuzufügen zu den Argumenten, die der Kernel beim Booten gegeben hat. Das sollte den Computer zumindest davon abhalten, eine erste IP-Anfrage zu senden, obwohl ich nicht sagen konnte, wie lange ich sie nur beim Testen von Live-CDs wirklich gebraucht habe (es sind alles statische RFC1918-IPs in meinem LAN).
quelle
Posting für andere Googeln dafür:
Wenn Sie NetworkManager verwenden, wird ab Juli 2008 avahi-autoipd unterstützt. Setzen Sie einfach BOOTPROTO = autoip in der Datei / etc / sysconfig / network-scripts / ifcfg- * der Schnittstelle. NetworkManager überspringt die DHCP-Konfiguration der Schnittstelle und wechselt direkt zur verbindungslokalen IPv4LL-Adressierung über autoipd.
quelle