[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:38134] Re: <Q> How to make a dhcp server for twosubnets?



池田@オレンジです。

実際に設定等した事はなくて、単にman見ただけの情報ですからウソ(or不十分)
かもしれません。

という前置きを置いといて・・・

On Thu, 4 Sep 2003 18:47:25 +0900
In <Q> How to make a dhcp server for twosubnets?
SHIBATA Akira <shibata@xxxxxxxxxxxxxx> Wrote
> 柴田(あ)です。
> 
> > > > MACアドレスと物理的にどのケーブルがどこにささっているのか,という
> > > > 情報しかdhcp serverはわからないと思うのですが.
> > > 
> > > ルータは別のモノなので一体化はできませんからしょうがないとして、
> > > なるほど、 MAC アドレスと物理的アドレスだけしかわからないとは
> > > 思いもよりませんでした。
> > 
> > routerが何か書いてないんですが、DHCPリレーに対応させればすむんじゃないですか。
> 
> router は下記の通りでリレーしていると考えています。
> 実際 dhcp-relay パッケージを入れるまで IP アドレスは
> dhcp サーバからは振られていませんでした。

DHCPのリレーエージェントというのは、サブネットにいるクライアントから直接
ブロードキャストの届かないDHCPサーバへの中継をする役割で、今柴田さんが設
定されているネットワークでは「偶然」IPルータとリレーエージェントが稼動し
ているモノが同一ホストであるに過ぎません。

たとえば

+--dhcpd
|
+-router
    |
    +--relay agent
    |
    +-client

という構成も存在し得ます。
もちろんルータ配下に複数のサブネットがある場合もあり得ます。
とすると、dhcpdはその複数サブネットをどう識別すれば良いかという問題に帰
結するのですが、「ルータのアドレス」では識別できないのは明らかです。

また同様に、クライアントに渡す "option routers" はクライアントがデフォル
トゲートウェイにすべきルータのアドレスを「サーバがクライアントへ」知らせ
るためのオプションですから、これではサーバはクライアントの(存在するサブ
ネットの)識別はできない事も明らかです。

で、manをつらつらと眺めてみたのですが、"option agent.circuit-id"あたりを
使ってどのagentからリレーされてきたパケットなのかをサーバ側で識別し、適
切なclassなりgroupなりのアドレスを返すという形になるのではないでしょうか?

see man 5 dhcp-options "RELAY AGENT INFORMATION OPTION"

--

Masaki Ikeda <masaki@xxxxxxxxxxxx>
    Orange System Co.