Humanity

Edit the world by your favorite way

DebianインストーラとDebianでDHCPクライアントの挙動が違う

結論から言うと

という事らしい。

あらすじ(?)

前エントリで
WindowsとLinuxが混在したネットワークでRTX810のDHCPサーバ機能を使う際の注意点
という記事を書いたけど、あれからDebianインストーラを起動する事があり、その際にDHCPでIP取得できなくてあれー?となったけど、もしかしてと思って「dhcp scope bind 1 192.168.xx.xx xx:xx:xx:xx:xx:xx」を「dhcp scope bind 1 192.168.xx.xx ethernet xx:xx:xx:xx:xx:xx」に変えたらいけた。
のでDebianインストーラDHCPクライアントはRFC2131準拠という結論になった。

そもそもなんでDebianのデフォルトのDHCPクライアントはRFC2131非準拠なんだろう?
まぁ探せばRFC2131準拠のDHCPクライアントもあるんだろうけど…

対処法

とりあえずDebianインストーラの方は手動でIPアドレス設定した。

追記:対処法2(2014/05/31 0:37)

DebianDHCPクライアント(dhclient)はデフォルトでRFC2131非準拠だが、dhclient.conf*1に以下の様に書けばRFC2131準拠になるようだ。

send dhcp-client-identifier = hardware;

これでWindowsであってもDebianインストーラ―でもインストール後のDebianであっても関係なく「dhcp scope bind 1 192.168.xx.xx ethernet xx:xx:xx:xx:xx:xx」の書き方に統一できる。
というのを以下の記事で知った(ブクマしたのは2014/04/18で、書くの忘れてた)。
なぜそうなるかについての詳しい解説や、RFC4361*2に則った動作にする方法等もあって素晴らしい。

Ubuntu desktop 12.04のdhclientのバグ?: エンジニア徒然草

*1:Debianだと /etc/dhcp/dhclient.conf

*2:DHCPが送るパケットのClient IDオプションについての新しい(2006年)仕様らしい。