Linux DHCP配置  

17.1 DHCP服务
DHCP也叫做动态主机服务,它的作用主要是为网络中的主机主机提供IP地址服务的。Dhcp采用client/server模式,客户机请求,服务端响应。

17.1.1 dhcp工作原理
1.客户端向网络上广播dhcpdiscover包,内包含客户机的mac地址。
2.dhcp服务器收到客户机的dhcpdiscover包后,发送一个dhcpoffer广播包,内包含IP地址,dhcp服务器IP等内容。
3.客户机收到第一个dhcp服务器发送的dhcpdiscover包后,再以广播的形式发送一个dhcprequest包发给所有的dhcp服务器,内有一个DHCP服务器IP,说我以已经找到了一个DHCP了。
4.被选中的服务器再发一个dhcppak广播包确认此IP的发放。
这个IP地址可以使用一半租期的时间,超过一半时间应续租,如果过了一半时间后找不到DHCP服务器的话,可以再使用四分之一时间,然后就过期了。用户就不能通过此IP地址进行通信了。

17.1.2 dhcp服务安装
首先应确认dhcp服务的安装
rpm -q dhcp
package dhcp is not installed  
没有安装,下面是dhcp的安装。
rpm -ivh dhcp-3.0pl1-23.i386.rpm     dhcp的安装

warning: dhcp-3.0pl1-23.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...        ########################################### [100%]
     1:dhcp           ########################################### [100%]

17.2 DHCP服务的配置
Dhcp服务的配置文件默认是没有的,需要在/etc手工创建dhcpd.conf文件。但是幸运的是,在安装dhcp服务时会为我们提供一个示例文件
/usr/share/doc/dhcp-3.0.1/dhcp.conf.sample
cp dhcp.conf.sample dhcpd.conf
将其复制为/etc/dhcpd.conf 并在其基础上进行修改配置。
17.2.1 dhcp单网配置文件
编辑dhcp配置文件为以下内容。具体的实际的环境的配置可以在以下配置文件的基础上进行修改,使其满足具体环境中的应用。
vi /etc/dhcpd.conf

ddns-update-style interim;          /*dhcp支持的dns动态更新方式*/
ignore client-updates;                     /*忽略客户端DNS动态更新*/

subnet 192.168.1.0 netmask 255.255.255.0 { /*作用域网段*/
range 192.168.1.11 192.168.1.100;      /*ip地址段范围*/
option routers 192.168.1.1;             /*网关地址*/
option subnet-mask 255.255.255.0;       /*子网掩码*/
option domain-name "koumm.com";         /*域名*/
option domain-name-servers 192.168.1.1,202.103.24.68; /*dns IP*/
option broadcast-address 192.168.16.255;/*广播地址*/
default-lease-time 86400;               /*租期1天,秒数*/
max-lease-time 172800;                  /*最长租期2天*/
/*绑定pc1主机ip地址配置*/
host pc1 {            
  hardware ethernet 00:a0:cc:cf:9C:14; /*绑定机MAC地址*/
  fixed-address 192.168.1.20;         /*最长租期2天*/
}
host pc2 {
  hardware ethernet 04:20:c1:f8:37:11;
  fixed-address 192.168.1.30;
}
}


17.2.2 dhcp超网配置文件
vi /etc/dhcp.conf

ddns-update-style interim;      /*dhcp支持的dns动态更新方式*/
ignore client-updates;          /*忽略客户端DNS动态更新*/

shared-network mynet {          /*超网作用域选项,共同部分*/
option subnet-mask 255.255.255.0;            /*子网掩码*/
option domain-name "koumm.net";              /*域名*/
option domain-name-servers 192.168.1.2;      /*dns IP*/
option broadcast-address 192.168.1.255;      /*广播地址*/
default-lease-time 86400;                    /*租期1天,秒数*/
max-lease-time 172800;                       /*最长租期2天*/

subnet 192.168.1.0 netmask 255.255.255.0 {   /*1.0子网段*/
  range 192.168.1.11 192.168.1.100;        /*ip地址段范围*/
  option routers 192.168.1.1;               /*网关地址*/
  /*绑定pc1主机ip地址配置*/
host pc1 {
   hardware ethernet 00:a0:cc:cf:9C:14;
   fixed-address 192.168.1.20;
  }
  /*绑定pc2主机ip地址配置*/
  host pc2 {
   hardware ethernet 04:20:c1:f8:37:11;
   fixed-address 192.168.1.30;
  }
}

subnet 192.168.2.0 netmask 255.255.255.0 {    /*2.0子网段*/
  range 192.168.2.10 192.168.2.100;         /*ip地址段范围*/
  option routers 192.168.2.1;                /*网关地址*/
        }

subnet 192.168.3.0 netmask 255.255.255.0 {    /*3.0子网段*/
  range 192.168.3.10 192.168.3.100;         /*ip地址段范围*/
  option routers 192.168.3.1;                /*网关地址*/
}
}

17.2.3 dhcp中继代理
只要是安装了DHCP服务,也就自动安装了dhcp中继代理dhcrelay。
中继代理服务默认监听所有接口上的dhcp请求,也可以只是监听某一个网卡上的请求。
dhcp中继代理配置文件:
/etc/sysconfig/dhcrelay

vi /etc/sysconfig/dhcrelay
# Command line options here
INTERFACES="eth1 eth2"
DHCPSERVERS="192.168.1.1"

也可以通过以下命令方式来实现:
dhcrelay -i eth1 -i eth2 192.168.1.1
配置完成后,重新启动dhcp服务。


17.2.4 dhcp服务管理
dhcp服务安装好后没有开启,验证如下。
chkconfig --list |grep dhcpd
dhcpd     0:关闭  1:关闭  2:关闭  3:关闭  4:关闭  5:关闭  6:关闭

chkconfig --level 345 dhcpd on   设为开机自动运行
/etc/init.d/dhcpd restart 或service dhcpd restart   重启服务


17.3 DHCP客户端配置
17.3.1 windows客户端
略,设为自动获取IP即可。
17.3.2 linux客户端
vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE = eth0                网卡设备
BOOTPROTO = dhcp             动态ip设置就为DHCP      
BROADCAST = 192.168.1.255    广播地址
HWADDR = 00:0C:29:49:D0:59   MAC地址
IPADDR = 192.168.1.10        本机IP地址
NETMAST = 255.255.255.0      子网掩码
NETWORK = 192.168.1.0        网络号
ONBOOT = yes                 开机时激活网卡

17.3.3 dhcp服务验证
1.服务器端验证
查看dhcp租约文件。
cat /var/lib/dhcp/dhcpd.leases

# This lease file was written by isc-dhcp-V3.0pl1

lease 192.168.1.100 {
  starts 3 2009/01/21 12:26:31;
  ends 4 2009/01/22 12:26:31;
  binding state active;
  next binding state free;
  hardware ethernet 00:0c:29:3b:20:d5;
}

查看系统日志文件
cat /var/log/messages
....
Jan 21 20:25:23 linux  1月 21 20:25:23 dhcpd: Listening on
Jan 21 20:25:23 linux  1月 21 20:25:23 dhcpd: Sending on  
Jan 21 20:25:23 linux  1月 21 20:25:23 dhcpd: Sending on  
Jan 21 20:25:23 linux  1月 21 20:25:23 dhcpd: dhcpd 启动 succeeded
Jan 21 20:26:30 linux dhcpd: DHCPDISCOVER from 00:0c:29:3b:20:d5 via eth0
Jan 21 20:26:31 linux dhcpd: DHCPOFFER on 192.168.1.100 to 00:0c:29:3b:20:d5 via eth0
Jan 21 20:26:31 linux dhcpd: DHCPREQUEST for 192.168.1.100 (192.168.1.8) from 00:0c:29:3b:20:d5 via eth0
Jan 21 20:26:31 linux dhcpd: DHCPACK on 192.168.1.100 to 00:0c:29:3b:20:d5 via eth0

2.客户端验证
ip地址验证:ifconfig
网关:/etc/sysconfig/network
dns: /etc/resolv.conf

上一篇: 女人卸妆算什麼!你见过旅游胜地的“卸妆照”吗?
下一篇: 支持UCenter的PHP建站程序一览
文章来自: 网易博客
引用通告: 查看所有引用 | 我要引用此文章
Tags: DHCP linux
相关日志:
评论: 77 | 引用: 0 | 查看次数: 3122

:Ŷij ֽ Ͼ ֳ ϶ ֽIJ Ͼ Ͼֳ ӹ ֳ թ 򿪻 Ͷע Űټ Žɳ ˹ 21 365bet Žɳ Žɳַ ÷ ˹˹ ˹ַ ֽ IJ IJ IJ ij ţ hg0088 ϻ ϻϷ