私はudhcpcをDHCPクライアントとして使用する組み込みシステムを開発しています。次のパラメータを使用して実行されているようです。
/usr/share/udhcpc # ps | grep dhcp 5366 root 2432 S udhcpc -R -b -p /var/run/udhcpc.eth0.pid -i eth0
パラメータを変更するか、独自のDHCPクライアントを実行したいと思います。検索してみると ifup および /etc/network/interfaces と関連があるようです。
iface eth0 inet dhcp
しかし、DHCPクライアントを変更する方法が見つかりませんでした。
知りたい
- パラメータをudhcpcに変更する方法
- udhcpcを終了せずに私のDHCPクライアントを実行できますか?
ありがとうございます!
答え1
あなたのシステムはbusybox
。
busybox
通常、リソースが制限されたリカバリメディアまたは組み込みシステムに使用されます。
パラメータを変更する必要がある場合は、udhcpc
自動的に呼び出すことができます。
次のように変更できます/etc/network/interfaces
。
iface eth0 inet manual
pre-up /sbin/udhcpc -R -b -p /var/run/udhcpc.eth0.pid -i eth0
他のDHCPクライアントを実行するには、それをインストールする必要があります。ただし、udhcpc
他のインターフェイスがない場合は切り替える必要があります。
これはudhcpc
ほんの一部であり、busybox
作業環境を提供するグローバルバイナリへのリンクにすぎず、DHCPクライアントを切り替えるスペースを節約できません。
答え2
Martin Trenkmannが提案した解決策は私にはうまくいきませんでした(udhcpc_optsを使用)。ただし、次の行を追加すると、私のシステムで機能します/etc/network/interfaces
。
auto eth0
iface eth0 inet dhcp
hostname myhostname
これにより、BusyBoxは次のことを行います。
$ ps aux| grep dhc
1685 root /sbin/udhcpc -n -p /run/udhcpc.eth0.pid -i eth0 -x hostname:myhostname
(で見つかりましたhttps://wiki.alpinelinux.org/wiki/Udhcpc)
答え3
パラメータをudhcpcに変更するには?
この目的に使用できますudhcpc_opts
。
iface eth0 inet dhcp
udhcpc_opts -t 10
...
上記の例は私たちに教えてくれます。ウズベキスタンリースを得るには最大10回の試みが必要です。