Dies scheint gut zu funktionieren:
dhclient eth0
ifconfig eth0:1 192.168.1.105 up
Aber nicht das:
ifconfig eth0 192.168.1.105 up
dhclient eth0:1
Gibt es eine Möglichkeit, DHCP auf eine virtuelle Adresse zu bekommen?
Das kann man nicht wirklich machen. Ihre Karte hat nur eine MAC-Adresse, aber mehrere IP-Schnittstellen. Sie müssen ihre Adressen statisch zugewiesen bekommen.
Wenn der DHCP-Server das DHCPOFFER zurücksendet, wie wird es zugestellt eth0:1
und nicht zu eth0
? eth0:1
sendet per Broadcast einen DHCPDISCOVER oder einen DHCPREQUEST. Der DHCP-Server antwortet mit einem DHCPOFFER, um den Client über seine IP-Adresse zu informieren. Aber wie kommt das DHCPOFFER an, wenn eth0:1
es noch keine IP-Adresse hat? Der DHCP-Server sendet Broadcasts zurück und verlässt sich auf die Verbindungsschicht, um den Ethernet-Frame (mit den anderen zugeordneten Schichten, die darüber gestapelt sind) korrekt an die richtige MAC-Adresse zu übermitteln. Und jetzt hat Ihr Gerät eine IP-Adresse.
Das Problem für das DHCPOFFER ist, dass die beiden "Geräte" ( eth0
und eth0:1
) aus einer Layer-2-Perspektive nicht zu unterscheiden sind, und daher (aus einer Layer-3-Perspektive) das DHCPOFFER für 255.255.255.255 bestimmt ist (da eth0:1
noch kein IP Adresse).
Sie können dies umgehen, indem Sie VLANs verwenden. Mit VLANs können Sie dieselbe physische Broadcast-Domäne wie mehrere "virtuelle" Broadcast-Domänen (daher der Name) behandeln.
dhclient eth0.1
, ein DHCPOFFER zu erhalten.