我已经安装了两个运行 Ubuntu 的虚拟机(我使用的是 Vmware 9.0)。
我在第一台机器(“ubuntu A”)上安装了 DHCP 服务器包,并且我希望第二台虚拟机(“ubuntu B”)作为客户端,从“ubuntu A”接收 dhcp 地址。
但我不知道如何在“ubuntu A”上配置 dhcpd。你能指导我如何配置吗?
我正在使用 Ubuntu 12.04 LTS。谢谢。
答案1
http://www.iasptk.com/ubuntu/20659-how-to-install-dhcp-server-in-ubuntu-server
1)必须在桥模式
2)在 ubuntu 12.04 中安装 DHCP 服务器
从 ubuntu 12.04 ISC DHCP 服务器开始,它是 dhcp3-server 的过渡包,因此你必须安装以下包
sudo apt-get install isc-dhcp-server
有两个主要文件 /etc/default/isc-dhcp-server 和 /etc/dhcp/dhcpd.conf,我们需要配置,所以让我们先来配置第一个。
DHCP 服务器配置
首先,您需要配置 /etc/default/isc-dhcp-server 文件,因此您需要使用以下命令编辑该文件
sudo nano /etc/default/isc-dhcp-server
您应该看到类似以下内容
#Defaults for dhcp initscript
#sourced by /etc/init.d/dhcp
#installed at /etc/default/isc-dhcp-server by the maintainer scripts
#
#This is a POSIX shell fragment
#
#On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
#Separate multiple interfaces with spaces, e.g. "eth0 eth1?.
INTERFACES="eth0?
将上面的 eth0 替换为您希望服务器租用地址的网络接口的名称。
保存并退出文件
现在您需要配置 /etc/dhcp/dhcpd.conf 文件,使用以下命令编辑此文件
sudo nano /etc/dhcp/dhcpd.conf
打开后你会看到类似以下内容
#
#Sample configuration file for ISC dhcpd for Debian
#
#Attention: If /etc/ltsp/dhcpd.conf exists, that will be used as
#configuration file instead of this file.
#
#
#The ddns-updates-style parameter controls whether or not the server will
#attempt to do a DNS update when a lease is confirmed. We default to the
#behavior of the version 2 packages ('none', since DHCP v2 didn't
#have support for DDNS.)
ddns-update-style none;
#option definitions common to all supported networks...
option domain-name-servers ns1.example.org, ns2.example.org;
option domain-name "yourdomainname.com";
default-lease-time 600;
max-lease-time 7200;
#If this DHCP server is the official DHCP server for the local
#network, the authoritative directive should be uncommented.
#authoritative;
#Use this to send dhcp log messages to a different log file (you also
#have to hack syslog.conf to complete the redirection).
log-facility local7;
#No service will be given on this subnet, but declaring it helps the
#DHCP server to understand the network topology.
#subnet10.152.187.0 netmask 255.255.255.0 {
#}
#This is a very basic subnet declaration.
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.150 10.0.0.253;
option routers 10.0.0.2;
option subnet-mask 255.255.255.0;
option broadcast-address 10.0.0.254;
option domain-name-servers 10.0.0.1, 10.0.0.2;
option ntp-servers 10.0.0.1;
option netbios-name-servers 10.0.0.1;
option netbios-node-type 8;
}
#option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;
#}
#This declaration allows BOOTP clients to get dynamic addresses,
#which we don't really recommend.
#subnet 10.254.239.32 netmask 255.255.255.224 {
#range dynamic-bootp 10.254.239.40 10.254.239.60;
#option broadcast-address 10.254.239.31;
#option routers rtr-239-32-1.example.org;
#}
#A slightly different configuration for an internal subnet.
#subnet 10.5.5.0 netmask 255.255.255.224 {
#range 10.5.5.26 10.5.5.30;
#option domain-name-servers ns1.internal.example.org;
#option domain-name "internal.example.org";
#option routers 10.5.5.1;
#option broadcast-address 10.5.5.31;
#default-lease-time 600;
#max-lease-time 7200;
#}
#Hosts which require special configuration options can be listed in
#host statements. If no address is specified, the address will be
#allocated dynamically (if possible), but the host-specific information
#will still come from the host declaration.
#host passacaglia {
#hardware ethernet 0:0:c0:5d:bd:95;
#filename "vmunix.passacaglia";
#server-name "toccata.fugue.com";
#}
#Fixed IP addresses can also be specified for hosts. These addresses
#should not also be listed as being available for dynamic assignment.
#Hosts for which fixed IP addresses have been specified can boot using
#BOOTP or DHCP. Hosts for which no fixed address is specified can only
#be booted with DHCP, unless there is an address range on the subnet
#to which a BOOTP client is connected which has the dynamic-bootp flag
#set.
#hostfantasia {
#hardware ethernet 08:00:07:26:c0:a5;
#fixed-address fantasia.fugue.com;
#}
#You can declare a class of clients and then do address allocation
#based on that. The example below shows a case where all clients
#in a certain class get addresses on the 10.17.224/24 subnet, and all
#other clients get addresses on the 10.0.29/24 subnet.
#class"foo" {
#match if substring (option vendor-class-identifier, 0, 4) = "SUNW";
#}
#shared-network 224-29 {
#subnet 10.17.224.0 netmask 255.255.255.0 {
#option routers rtr-224.example.org;
#}
#subnet 10.0.29.0 netmask 255.255.255.0 {
#option routers rtr-29.example.org;
#}
#pool {
#allow members of "foo";
#range 10.17.224.10 10.17.224.250;
#}
#pool {
#deny members of "foo";
#range 10.0.29.10 10.0.29.230;
#}
#}
从上面的文件中,您需要配置粗体选项并将域名更改为 yourdomainname.com
最后,你必须使用以下命令重新启动 dhcp 服务
sudo service isc-dhcp-server restart
DHCP 服务器测试
你可以通过运行以下命令来检查你的 dhcp 服务器是否正常工作
sudo netstat -uap