R.A. Epigonos et al.

[dhcpd] netmaskを指定してIPアドレスを無駄に使わない

無駄遣いするともったいないお化けが出てくるし、ネットワークのレスポンスてきにどうよ。というわけで、netmaskを255.255.255.0から変更してみる。255.255.255.0だと、256-0個のアドレスが使える訳だが、家ネットでそんな大量のマシンは使わない。必須のアドレスとして、ネットワークアドレスとブロードキャストアドレス、さらにルータに割り当てるアドレスで、3つ消費するとして、空きアドレスはせいぜい1つのネットワークあたり4つもあれば十分。3+4=7だけど、2の累乗で表せる7より大きな数で一番近いのは8。ということで8つのアドレスを使えるようにしよう、netmaskは256-8で248だから、255.255.255.248でOKかな。で、指定してみる。

subnet 192.168.1.0 netmask 255.255.255.248 {
        # ルータのアドレスはNICにstaticに割り当てたアドレス。
        # /etc/sysconfig/network-scripts/ifcfg-eth?とかで。
        option routers 192.168.1.1
        # dhcpcが受け取って、オートマチックに設定してくれるサブネ
        # ットマスクとDNSサーバ
        option subnet-mask 255.255.255.248
        option domain-name-servers AAA.BBB.CCC.DDD EEE.FFF.GGG.HHH
        # rangeは必須属性、これが無いと必ず失敗dynamic-bootpはオ
        # プション
        # とりあえずネットワークアドレス192.168.1.0とサブネットマ
        # スク255.255.255.248で割り当て可能なアドレス範囲全てにし
        # てみた。割り当ては大きい方から行われるようだ。ここでは
        # 192.168.1.7から。
        # dynamic-bootpはbootpクライアント(ディスクレスマシンとか
        # 関係がありそうだが詳細不明、普通はBOOTPクライアントには
        # MACアドレスからSTARICなアドレスを割り振るのが普通と思わ
        # れる。)とDHCPクライアントの両方からの要求を受付、その後
        # ろの引数で割り当てるレンジを指定。全ての空きアドレスを
        # クライアントからの要求で割り当てるとすれば、下のような
        # 感じの5個のアドレスになる。
        range dynamic-bootp 192.168.1.2 192.168.1.6
}

まずDHCPクライアントでIPアドレスを返却しておく、その後dhcpdの再起動。DHCPクライアントでアドレス要求して、正しく割り当てられるか確認。

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2008-09-30T16:16:07+09:00
  2. Modified: 2008-09-30T07:09:31+09:00
  3. Generated: 2023-08-27T23:09:15+09:00