Alpine Linux が DHCP サーバーにホスト名を送信しない

Alpine Linux が DHCP サーバーにホスト名を送信しない

Alpine Linux が DHCP サーバーから IPv4 アドレスを要求するとき、ホスト名を DHCP サーバーに送信しません。そのため、LAN 内のサーバーのホスト名でアクセスできません。これが私の設定です。

私は VM (コンテナではない) で Alpine Linux 3.12 を使用しており、アーキテクチャは aarch64 です。

ルーターはopenwrt 19.07.3を実行し、BusyBoxはv1.31.1です。

私の設定:

nodeprealp99:~# cat /etc/network/interfaces 
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp
        hostname nodeprealp99 

私もこれを試しました:

nodeprealp99:~# cat /etc/network/interfaces 
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp
        hostname nodeprealp99
        udhcpc_opts -h $HOSTNAME

私はあなたの助けに感謝します

答え1

私は最終的にdhclientを使うことにしましたが、これも非常に軽量です

apk add dhclient coreutils

/etc/dhcp/dhclient.confに設定ファイルを作成する

send host-name = gethostname();
prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, host-name;
require subnet-mask, domain-name-servers;
timeout 60;
retry 60;
reboot 10;
select-timeout 7;
script "/etc/dhclient-script";

lease {
  interface "eth0";
}

再起動する

reboot

答え2

@ozkolonur この解決策は私にとってはうまくいきました。ただし、さらに 3 ~ 4 MB が追加されます (クリーン OS のサイズが 2 倍になります)

新しい ifupdown スクリプト (ifupdown-ng の新世代と想定) にバグがあります。

ifupdown-ng-0.8.5-r0 x86_64 {ifupdown-ng} (ISC) [installed]

それを削除して、古き良き ifupdown をインストールするだけです:

apk update
apk del ifupdown-ng
apk add ifupdown
reboot

関連情報