爱心区 公益下载 公益文章 人在旅途 小博士乐园

>>首页 -> 公益文章 -> 技术文栏 -> 冲浪宝典 -> Linux作DHCP服务器之二



Linux作DHCP服务器之二


作者intl 来源loveintl 加入时间:2005-9-13
摘要:
Linux作DHCP服务器之二
4 DHCP分配IP地址的过程

DHCP客户机初始化TCP/IP,在本地物理子网上广播一个 DHCPDISCOVER 消息, 以确定DHCP服务器位
置及其IP地址。如果DHCP服务器和客户不在同一个物理子网上,BOOTP中继代理将转发这个消息给DHCP服务器。由于网络上可能不止一个DHCP服务器,凡所有具有有效IP地址信息的DHCP服务器向客户机发出一个提...

转载:转载请保留本信息,本文来自
http://www.51dibs.com/info/21955.htm

Linux作DHCP服务器之二
4 DHCP分配IP地址的过程

DHCP客户机初始化TCP/IP,在本地物理子网上广播一个 DHCPDISCOVER 消息, 以确定DHCP服务器位
置及其IP地址。如果DHCP服务器和客户不在同一个物理子网上,BOOTP中继代理将转发这个消息给DHCP服务器。由于网络上可能不止一个DHCP服务器,凡所有具有有效IP地址信息的DHCP服务器向客户机发出一个提议。客户机从接收到的第一个提议中选定IP地址信息,并广播一条租用地址的消息请求。由发出该提议的DHCP服务器响应该消息,指定IP地址信息给该客户机并发送一个确认,而所有其它DHCP服务器撤回各自的提议。客户机完成TCP/IP协议的初始化和绑定。配置完成后,客户机就可以使用普通网络通信和连接至其它IP主机时用到的所有IP服务和应用。

三、DHCP 服务器软件的安装


在Linux几乎都采用的是Paul Vixie/ISC DHCPd,来实现DHCP服务器端功能。可以访问

http://www.isc.org/isc

获得最新消息。

目前大多书Linux发布都包含这个软件,如果是Red Hat,以RPM形式提供,只要单地用RPM安装就可以了。

# rpm -i dhcpd-1.3.17pl5-i386.rpm

四、基本应用

从目前情况看,大多数Linux DHCP服务器是为Windows95/98客户平台提供服务。

1.增加主机路由


为了使DHCP服务器能为正确MS的DHCP客户机器服务,需要创建一个到地址255.255.255.255的路由,把这条路由命令加到/etc/rc.d/rc.local,使得每次机器启动后自动运行。

#route add -host 255.255.255.255 dev eth0

在一些老Linux核心的系统里可能会报告错误消息:

255.255.255.255: Unkown host

可以试着加下面的条目到/etc/hosts文件里

255.255.255.255 dhcphost

再用下面的命令

#route add -host dhcphost dev eth0

2.修改配置文件

DHCPd默认的配置文件是/etc/dhcpd.conf,这是一个文本文件,DHCPd里有一个语法分析器,能对这个文件进行语法分析,获得配置参数。dhcpd.conf 格式是递归下降的,关键字大小写敏感,可以有注释,注释以#开头,一直到该行结束。这里给出一个简单的dhcpd.conf的例子,所服务的网络为C类保留网络 192.168.1.0

#examples

# 缺省租约时间

default-lease-time 28800;

# 最大租约时间

max-lease-time 43200;

# 子网掩码选项

option subnet-mask 255.255.255.0;

# 广播地址

option broadcast-address 192.168.1.255;

# 路由器地址

option routers 192.168.1.1;

# DNS地址

option dom2.4 DHCP分配IP地址的过程

DHCP客户机初始化TCP/IP,在本地物理子网上广播一个 DHCPDISCOVER 消息, 以确定DHCP服务器位
置及其IP地址。如果DHCP服务器和客户不在同一个物理子网上,BOOTP中继代理将转发这个消息给DHCP服务器。由于网络上可能不止一个DHCP服务器,凡所有具有有效IP地址信息的DHCP服务器向客户机发出一个提议。客户机从接收到的第一个提议中选定IP地址信息,并广播一条租用地址的消息请求。由发出该提议的DHCP服务器响应该消息,指定IP地址信息给该客户机并发送一个确认,而所有其它DHCP服务器撤回各自的提议。客户机完成TCP/IP协议的初始化和绑定。配置完成后,客户机就可以使用普通网络通信和连接至其它IP主机时用到的所有IP服务和应用。

三、DHCP 服务器软件的安装


在Linux几乎都采用的是Paul Vixie/ISC DHCPd,来实现DHCP服务器端功能。可以访问

http://www.isc.org/isc

获得最新消息。

目前大多书Linux发布都包含这个软件,如果是Red Hat,以RPM形式提供,只要单地用RPM安装就可以了。

# rpm -i dhcpd-1.3.17pl5-i386.rpm

四、基本应用

从目前情况看,大多数Linux DHCP服务器是为Windows95/98客户平台提供服务。

1.增加主机路由


为了使DHCP服务器能为正确MS的DHCP客户机器服务,需要创建一个到地址255.255.255.255的路由,把这条路由命令加到/etc/rc.d/rc.local,使得每次机器启动后自动运行。

#route add -host 255.255.255.255 dev eth0

在一些老Linux核心的系统里可能会报告错误消息:

255.255.255.255: Unkown host

可以试着加下面的条目到/etc/hosts文件里

255.255.255.255 dhcphost

再用下面的命令

#route add -host dhcphost dev eth0

2.修改配置文件

DHCPd默认的配置文件是/etc/dhcpd.conf,这是一个文本文件,DHCPd里有一个语法分析器,能对这个文件进行语法分析,获得配置参数。dhcpd.conf 格式是递归下降的,关键字大小写敏感,可以有注释,注释以#开头,一直到该行结束。这里给出一个简单的dhcpd.conf的例子,所服务的网络为C类保留网络 192.168.1.0

#examples

# 缺省租约时间

default-lease-time 28800;

# 最大租约时间

max-lease-time 43200;

# 子网掩码选项

option subnet-mask 255.255.255.0;

# 广播地址

option broadcast-address 192.168.1.255;

# 路由器地址

option routers 192.168.1.1;

# DNS地址

option domain-name-servers 192.168.1.1;

# 域名

option domain-name "netreslab.org";

# 以上都是全局参数

# 子网声明和掩码

subnet 192.168.1.0 netmask 255.255.255.0 {

# 范围
range 192.168.1.10 192.168.1.100;

# 范围

range 192.168.1.150 192.168.1.200;

}

这段配置文件将允许DHCP服务器分配两段地址范围给DHCP客户,192.168.1.10-100 和192.168.1.150-200
如果DHCP客户在申请租约时不请求一个特定租约失效时间,则以default-lease-time(28800秒)为租约时间,如果有请求一个特定的租约失效时间,则采用max-lease-time(432000秒)

服务器发送下面的参数给DHCP客户机:

子网掩码是255.255.255.0 ,广播地址是192.168.1.255,默认网关是192.168.1.1,DNS是192.168.1.1。

如果要为一台叫做hotdog的机器指定固定的IP地址,可以在dhcpd.conf文件加一条

host hotdog {

# hotdog上网卡的硬件地址
hardware ethernet 08:00:00:4c:58:23;
#固定IP
fixed-address 192.168.1.210;
}


相关文章

相关软件

客户服务中心信箱:[email protected]