
Ich arbeite an einem eingebetteten System und es verwendet udhcpc als DHCP-Client. Es scheint mit den folgenden Parametern zu laufen:
/usr/share/udhcpc # ps | grep dhcp 5366 root 2432 S udhcpc -R -b -p /var/run/udhcpc.eth0.pid -i eth0
Ich möchte die Parameter ändern oder meinen eigenen DHCP-Client ausführen. Ich habe gesucht und glaube, es hat etwas mit ifup und /etc/network/interfaces zu tun.
iface eth0 inet dhcp
Aber ich sehe keine Möglichkeit, den DHCP-Client zu ändern.
ich würde gerne wissen
- wie man den Parameter in udhcpc ändert, und
- wenn es möglich ist, meinen eigenen DHCP-Client auszuführen, ohne udhcpc zu beenden
Danke!
Antwort1
Ihr System scheint eine leichte Version/Variante von Debian zu sein, basierend auf busybox
.
busybox
wird normalerweise entweder als Wiederherstellungsmedium oder für eingebettete Systeme mit begrenzten Ressourcen verwendet.
Zum Ändern der Parameter können Sie die Funktion udhcpc
automatisch aufrufen.
Sie können /etc/network/interfaces
Folgendes ändern:
iface eth0 inet manual
pre-up /sbin/udhcpc -R -b -p /var/run/udhcpc.eth0.pid -i eth0
Um einen anderen DHCP-Client auszuführen, müssen Sie diesen installieren. Sie müssen ihn jedoch austauschen, udhcpc
sofern Sie nicht über andere Schnittstellen verfügen.
Bedenken Sie, dass es sich, da udhcpc
es Teil von ist busybox
, nur um einen Link zu einer globalen Binärdatei handelt, die Ihnen eine Arbeitsumgebung bereitstellt, und dass Sie daher beim Wechseln zwischen DHCP-Clients keinen Platz sparen.
Antwort2
Die von Martin Trenkmann vorgeschlagene Lösung hat bei mir nicht funktioniert (mit udhcpc_opts). Auf meinem System hat es jedoch /etc/network/interfaces
funktioniert, wenn ich die folgenden Zeilen hinzufüge:
auto eth0
iface eth0 inet dhcp
hostname myhostname
Dies veranlasste BusyBox zur Ausführung:
$ ps aux| grep dhc
1685 root /sbin/udhcpc -n -p /run/udhcpc.eth0.pid -i eth0 -x hostname:myhostname
(Gefunden amhttps://wiki.alpinelinux.org/wiki/Udhcpc)
Antwort3
Wie ändere ich den Parameter in udhcpc?
Sie können udhcpc_opts
hierfür verwenden.
iface eth0 inet dhcp
udhcpc_opts -t 10
...
Das obige Beispiel zeigtAbonnierenhöchstens 10 Mal versuchen, einen Mietvertrag zu bekommen.