DHCPリレーエージェント
別のネットワークにあるDHCPサーバと端末の間で、DHCPメッセージを中継する機能。ルータやL3スイッチなどで動作する。端末から受け取った要求のgiaddrフィールドに、要求を受信したインタフェースのIPアドレスを入れる。
イマシルちゃんの解説
DHCPは、端末にIPアドレスなどの通信設定を配るプロトコルだよ。
端末は最初の要求を、同じネットワーク内へ一斉に届けるブロードキャストで送るんだ。
これは通常ルータの先へ届かないから、別のネットワークにあるサーバにはそのまま送れないの。
そこで使うDHCPリレーエージェントは、端末とサーバの間で要求や応答を取り次ぐ機能だよ。
要求には端末がいるネットワークを判断する情報も添えるから、サーバはその場所に合うIPアドレスを選べるんだ。
ネットワークごとにサーバを置かなくても、通信設定をまとめて管理できるよ。
この解説はわかりやすかったですか?
より深い解説
定義
DHCPリレーエージェントは、DHCPクライアントがブロードキャストで送ったメッセージを受け取り、あらかじめ設定したDHCPサーバのアドレスへユニキャストで転送する機能である。1台のDHCPサーバで、複数のセグメント(VLAN)の端末にアドレスを配布できる。
giaddrフィールド
リレーエージェントは、中継するDHCPのメッセージの giaddr(Gateway IP Address)フィールドに、そのメッセージを受信した自分のインタフェースのIPアドレスを入れる。
| giaddrの役割 | 内容 |
|---|---|
| セグメントの識別 | DHCPサーバは、giaddrのアドレスから、端末が属するセグメント(サブネット)を判断し、そのセグメント用のアドレスの範囲(スコープ)から割り当てる |
| 応答の送り先 | DHCPサーバは、応答をgiaddrのアドレス(リレーエージェント)へ送り、リレーエージェントが端末へ届ける |
例:L3スイッチのVLAN 10のインタフェース(192.168.10.1)で受信した要求は、giaddr=192.168.10.1 となり、DHCPサーバは 192.168.10.0/24 のスコープからアドレスを割り当てる。
流れ
- 端末がDHCPDISCOVERをブロードキャストで送る
- L3スイッチ(リレーエージェント)が受け取り、giaddrを設定して、DHCPサーバへユニキャストで転送する
- DHCPサーバは、giaddrからスコープを選び、DHCPOFFERをリレーエージェントに返す
- リレーエージェントが、端末へ転送する(REQUEST、ACKも同様)
Option 82
リレーエージェントは、端末がつながっているスイッチのポートなどの情報を、DHCPのオプション82(リレーエージェント情報オプション)として付け加えることもできる。DHCPサーバは、これを使って、ポートごとに配布するアドレスを決めたり、記録を残したりできる。