Debian 3.16カーネルを実行するMarvel Kirkwoodデバイスがあります。起動時にDHCPClientはループに入り、DHCPサーバーにログインして期限切れのリースをダンプするように要求しない限り、IPを取得できません。 DHCPサーバーは、その場所にある他の25台のデバイスに問題はありません。
これは、DHCPサーバーがデバイスにプッシュしようとしているホスト名を拒否するデバイスに関連していると思います。デバイスがホスト名をDHCPサーバーに知らせる方法と不明です。
編集する:最後にIPを取得すると、DHCPクライアントのリストに実際のデバイス名の代わりにnew-hostという名前が表示されます。
[ 34.300664] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPNAK from 192.168.2.1
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 4
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPOFFER from 192.168.2.1
DHCPNAK from 192.168.2.1
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPNAK from 192.168.2.1
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 6
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPOFFER from 192.168.2.1
DHCPNAK from 192.168.2.1
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPNAK from 192.168.2.1
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 6
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPOFFER from 192.168.2.1
// CLEARED the 'expired DHCP leases'
DHCPACK from 192.168.2.1 bound to 192.168.2.24 --renewal in 100664 seconds.
どんな提案がありますか?
答え1
CuboxでDebianを使用しても同じ問題が発生しました。
しかし、DHCPサーバー(dhcpd OpenBSD実行)のログファイルを見ると、私の場合の問題が明らかになりました。
Oct 4 08:45:04 gateway dhcpd[22743]: Both dynamic and static leases present for 192.168.1.2.
Oct 4 08:45:04 gateway dhcpd[22743]: Either remove host declaration 192.168.1.2 or remove 192.168.1.2
Oct 4 08:45:04 gateway dhcpd[22743]: from the dynamic address pool for 192.168.1.0
私が犯した間違いは、MACアドレスに基づいていくつかのホストに静的IPアドレスを割り当ててから、動的プール(DHCPサーバーの範囲セクション)で同じIPアドレスを使用することです。
答え2
/etc/dhcp/dhcp/dhclient.confのdhcpクライアントは、dhcpサーバーのホスト名としてgethostname()を送信しています。
gethostname() をデバイスのハードコードされた名前に変更し、問題を解決しました。
答え3
私の質問DHCPサーバー(ルーター)に予約された住所があります
削除して再割り当てすると問題が解決しました。