🌐

Ciscoルータ、DHCPサーバのすゝめ

に公開

はじめに

  • こんにちは。ふまたんです。今回は、前回予告していた通り、CiscoルータのDHCPサーバとしての設定方法について記事を書いていきたいと思います。
  • DHCPの動作の仕方は、前回の記事を参考にしてください。

https://zenn.dev/whomatan/articles/ea2e93eca850c4

DHCPサーバとして設定をしていこう!

今回は、192.168.1.0/24のネットワークに対してDHCPでホストアドレスを割り当てることを例として設定の手順を書いていこうと思います。

Step1 除外IPアドレスの設定

まず、デフォルトゲートウェイやサーバなど、固定しておきたい(ほかのホストには割り当てをしたくない)IPアドレスを除外する設定を行っていきます。
キーワード:excluded-address

Router>en
Router#conf t
Router(config)#ip dhcp excluded-address <除外するIPアドレスの先頭> <除外するIPアドレスの最後>
! 192.168.1.1~192.168.1.10までを除外したい場合は、
! ip dhcp excluded-address 192.168.1.1 192.168.1.10
! と指定します。
! 192.168.1.254のみ除外する場合は、
! ip dhcp excluded-address 192.168.1.254
! と指定します。

Step2 DHCPプールの設定

DHCPサーバとして機能させるには、アドレスの情報など配信するのに情報を保持してるプールを作成する必要があります。

2-1. プール名の設定

DHCPプールを作成する際にプール名をまず設定します。

Router(config)#ip dhcp pool <DHCPプール名>
! ここでEnter押すとプール名の設定が完了し、DHCPコンフィギュレーションモードに移行します。
Router(dhcp-config)#

2-2. 配布するIPアドレスの設定

配布するネットワークの情報と範囲を設定していきます。

Router(dhcp-config)#network 192.168.1.0 255.255.255.0

2-3. デフォルトゲートウェイの設定

DHCPクライアントに渡すデフォルトゲートウェイの情報の設定をしていきます。
今回の例では、デフォルトゲートウェイは192.168.1.254とします。

Router(dhcp-config)#default-router 192.168.1.254

2-4. その他の設定

上記の2-1~4までの設定でDHCPサーバ(今回はルータ)から配布された情報で、IPアドレスの設定と異なるネットワークとの通信を可能にすることができるようになりました。しかし、DHCPサーバには、他にもオプションがあるので、紹介していきます。

  1. DHCPリース期間(IPアドレスの貸し出し期間)の指定
    デフォルトでは1日となっています。リース期間を設定するには、下記のコマンドで設定することができます。

    Router(dhcp-config)#lease <日数> <時間> <分>
    ! 例えば、7日間リースするのであれば、
    ! lease 7 とコマンドを実行し、
    ! 12時間リースをするのであれば、
    ! lease 0 12 とコマンドを実行します。
    ! また、10分間だけリースするのであれば、
    ! lease 0 0 10 とコマンドを実行します。
    
  2. DNSサーバの指定
    DNS(Domain Name System)サーバの指定を行うことができます。DNSとはドメイン名をIPアドレスに変換してくれます。

    Router(dhcp-config)#dns-server <DNSサーバのIPアドレス①> <DNSサーバのIPアドレス②>
    ! 上記のようにDNSサーバの指定は複数することができます。
    
  3. ドメイン名の指定
    ドメイン名を指定することができます。

    Router(dhcp-config)#domain-name <ドメイン名>
    

Step3 DHCP確認コマンド

Step2までの設定でDHCPサーバとしての機能を有効にすることができました。
DHCPサーバとして設定できているのか、どんなIPアドレスが配布されているのかなど、確認するコマンドを紹介していきます。

  1. DHCPプールの確認
    show ip dhcp pool コマンドを打つとDHCPプールについて確認することができます。実際に実行した画像が下記になります。

IP address rangeの項目に表示されているIPアドレスは、割り当てる範囲になります。
Leased/Excluded/Totalの項目にあるLeasedはIPアドレスを割り当てた数を示し、Excludedは除外しているIPアドレスの数を示しています。

  1. バインディングデータベース(割り当て状況)の確認
    show ip dhcp binding コマンドを打つと現在DHCPによってIPアドレスなどの情報が割り当てられている機器のMACアドレス割り当てたIPアドレスについて確認することができます。実際に実行した画像が下記になります。

IP addressの項目に表示されているのは、割り当てたIPアドレスが表示されています。
Cient-ID/Hardware addressの項目に表示されているのは、割り当てた端末のMACアドレスが表示されています。

  1. コンフリクト(IPアドレスの競合)情報の確認
    show ip dhcp conflict コマンドを打つとIPアドレスの競合情報を確認することができます。実際に実行した画像が下記になります。

IP addressの項目に表示されているのは、競合が発生しているIPアドレスを表示しています。
Detection methodの項目に表示されているのは、重複を検知した方法を表示しています。重複を検知する方法として、GARPもしくはPingが用いられます。
Detection timeの項目に表示されているのは、重複を検知した日時を表示しています。
一度コンフリクトが発生したIPアドレスは、DHCPによる配布を行わないので、もしコンフリクト情報として登録されたIPアドレスを使用したい場合は、clear ip dhcp conflict *特権モードで実行する必要があります。

まとめ

  • 今回は、CiscoルータでのDHCPサーバの設定方法をまとめていきました。
  • 大規模なネットワークになるほど、DHCPのありがたみが痛感すると思います。しかし、大規模になればなるほど、ルータにDHCPサーバの役割を持たせることはナンセンスです。理由は、OSPFなど他のプロセスもルータは担っているので、負荷がよりかかってしまうからです。その時は、別でDHCPサーバを用意しましょう。

Discussion