web-dev-qa-db-ja.com

仮想マシンを備えた1台の物理マシンでDHCPサーバーをローカルでテストする

Ubuntu 12.04でDHCPサーバーを設定および監視する簡単なプログラムを書いています。物理マシンがDHCPサーバーになり、VM(仮想マシン)が1つのリースを取得するようにしようとしています(そして、その情報をリースファイルで読み取ります)。

Isc-dhcp-serverを使用します。テスト中にnetwork-managerをオフにしました。 VirtualBoxを使用してVMをホストし、ネットワークはブリッジアダプターを使用するように構成されています。サーバーは正常に起動しますが、VMの実行中に次のメッセージが表示されました。

Jun 16 12:15:59 asus dhcpd: DHCPOFFER on 192.168.1.3 to 08:00:27:15:26:a6 (ubuntu) via eth0
Jun 16 12:15:59 asus dhcpd: DHCPDISCOVER from 08:00:27:15:26:a6 (ubuntu) via eth0
Jun 16 12:15:59 asus dhcpd: DHCPOFFER on 192.168.1.3 to 08:00:27:15:26:a6 (ubuntu) via eth0
Jun 16 12:16:12 asus dhcpd: DHCPDISCOVER from 08:00:27:15:26:a6 (ubuntu) via eth0

VMはDHCPOFFERをまったく取得しません。この問題を解決する方法はありますか?または、DHCPサーバーをローカルでテストする別の方法ですか?私は助けに感謝します。前もって感謝します。

----------------------------

DHCPサーバーの構成は次のとおりです。

/ etc/network/interfaces

iface eth0 inet static  
address 192.168.1.2  
netmask 255.255.255.0  
gateway 192.168.1.1  
broadcast 192.168.1.255

/etc/dhcp/dhcpd.conf

ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;

authoritative;
allow booting;
allow bootp;

subnet 192.168.1.0 netmask 255.255.255.0 {
  interface eth0;
  range 192.168.1.3 192.168.1.254;
  option routers 192.168.1.1;
  option subnet-mask 255.255.255.0;
  option broadcast-address 192.168.1.255;
}

/ etc/default/isc-dhcp-server

INTERFACES="eth0"
3
szemek

わかりました、別の解決策を見つけました。内部ネットワークで2つの仮想マシンを使用しています。そのうちの1つは静的IPアドレスを使用し、DHCPサーバーが構成されています。 2番目のVMはDHCPサーバーを検出し、範囲からIPを取得します。

3
szemek

私はあなたの質問を正確に理解していません。しかし、ホストでisc-dhcp-serverを設定し、それをテストして、仮想ボックスにインストールしたゲストOSがホストからIPアドレスを取得するかどうかを確認する場合。することをお勧めします

1.ゲストにIPを自動的に付与するように設定します。

2.接続をホスト専用アダプターに設定します

3./etc/default/isc-dhcp-serverで、INTERFACES = "eth0"をINTERFACES = "vboxnet0"に変更します。

4./etc/dhcp/dhcp3で、vboxnet0 IPアドレスに基づいてすべてのアドレスを追加します。また、 here で追加情報を見つけることができますが、先ほど述べたように、vboxnet0のIPアドレスに基づいてすべてのIPアドレスを変更する必要があります。