首先呢,DHCP指的是由某服务器控制一段IP地址范围,客户机(也就是你的pc)登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。
在DHCP的工作原理中,DHCP服务器提供了三种IP分配方式:自动分配(Automatic allocation)、手动分配和动态分配(DynamicAllocation)。
・自动分配是当DHCP客户机第一次成功的从DHCP服务器获取一个IP地址后,就永久的使用这个IP地址。
・手动分配是由DHCP服务器管理员专门指定的IP地址
・动态分配是当客户机第一次从DHCP服务器获取到IP地址后,并非永久使用该地址,每次使用完后,DHCP客户机就需要释放这个IP,供其他客户机使用。
动态主机设置协议(Dynamic Host Configuration Protocol, DHCP)是一个局域网的网络协议。两台连接到互联网上的电脑相互之间通信,必须有各自的IP地址,由于IP地址资源有限,宽带接入运营商不能做到给每个报装宽带的用户都能分配一个固定的IP地址(所谓固定IP就是即使在你不上网的时候,别人也不能用这个IP地址,这个资源一直被你所独占),所以要采用DHCP方式对上网的用户进行临时的地址分配。也就是你的电脑连上网,DHCP服务器才从地址池里临时分配一个IP地址给你,每次上网分配的IP地址可能会不一样,这跟当时IP地址资源有关。当你下线的时候,DHCP服务器可能就会把这个地址分配给之后上线的其他电脑。这样就可以有效节约IP地址,既保证了你的通信,又提高IP地址的使用率。
客户机从DHCP服务器获得IP地址的过程叫做DHCP的租约过程。
・租约过程分为四个步骤,分别为:客户机请求IP(客户机发DHCP Discover广播包)、服务器响应(服务器发DHCP Offer广播包)、客户机选择IP(客户机发DHCP Request广播包)、服务器确定租约(服务器发DHCP ACK广播包)。
案例一:使用两台虚拟机模拟,一台是Enterprise linux5版本作为DHCP服务器,一台使用windows server 2003作为客户机实现对一台机器分配一个任意地址以及分配一个固定ip:
拓扑图:
1、DHCP搭建前期工作准备:
在虚拟机里VM--àsetting里如下图选择网卡选项:Host-only
2、在Linux安装DHCP服务器
3、配置/etc/dhcpd.conf文件,起初该文件是空的,我们需要往里拷贝文件。
[root@server1 Server]# cp/usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample/etc/dhcpd.conf
再编辑如下图所示:
4、按照上面方法做好现在可以重启下dhcp服务:
[root@server1 Server]#service dhcpd restart
注:
出现错误时可以使用下面命令
[ root@server1 Server]# service dhcpd configtest
还可查询日志文件:
[root@server1 Server]#tail �Cf /var/log/messages
5、打开客户机,进行测试
在cmd下使用ipconfig /release关闭网卡
Ipconfig /renew 重启网卡
再ipconfig /all 下查看是否可以自动获取IP
也可以绑定ip:
同样编辑/etc/dhcpd.conf文件,如下图,绑定mac地址:
打开客户机,进行测试
案例二:在案例一的基础上实现超级作用域。超级作用域可以分配更多的ip地址,在下面的实验我们使用两个作用域,建立两个c类网络的地址池。
1、首先,在案例一的基础之上我们配置/etc/dhcpd.conf文件,修改如下图所示:
2、按照上面方法做好现在可以重启下dhcp服务:
[root@server1 Server]#service dhcpd restart
这样我们就有了一个超级作用域,支持更多的ip
案例三:dhcp中继
使用中继可以使不同的vlan从一个dhcp获取地址:
使用设备:华为s2000交换机、h3c防火墙、虚拟机中Enterprise linux5作为dhcp服务器,以及两台windows server 2003作为客户机获取ip地址
拓扑图:
1、配置server
在Linux安装DHCP服务器
配置/etc/dhcpd.conf文件:起初该文件是空的,我们需要往里拷贝文件。
[root@server1 Server]# cp/usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample/etc/dhcpd.conf
按照上面方法做好现在可以启动dhcp服务:
[root@server1 Server]#service dhcpd restart
2、配置交换机:
system-view
vlan 10
port e1/0/10
vlan 20
port e1/0/10
vlan 30
port e1/0/22
int e1/0/24
port link-type trunk
port trunk permit vlan all
配置h3c:
undo insulate(防火墙取消隔离)
int eth0/0.1
vlan -type dot1q vid 10
ip add 192.168.10.1 24
int eth0/0.2
vlan -type dot1q vid 20
ip add 192.168.20.1 24
int eth0/0.30
vlan -type dot1q vid 30
ip add 192.168.30.1 24
firewall zone trust
add interface eth0/0.1
add interface eth0/0.2
add interface eth0/0.3
防火墙上配置中继:
int eth0/0.1
dhcp select relay
int eth0/0.2
dhcp select relay
int eth0/0.10
ip relay address 192.168.30.129
int eth0/0.20
ip relay address 192.168.30.129
测试:
将客户机连接不同的vlan接口将被分配不同网段的ip!
希望和大家一起多多交流!!!
本文出自 “乾坤的博客” 博客,转载请与作者联系!