DHCP是Dynamic Host Configuration Protocol的缩写,它是TCP/IP协议簇中的一种,主要是用来给网络客户机分配动态的IP地址。
其主要功能是:
用于内部网络或网络服务供应商自动分配IP地址给用户
用于内部网络管理员做为对全部电脑做中央管理的手段
直接点就是,这些被分配的IP地址都是DHCP服务器预先保留的一个由多个地址组成的地址集,而且它们通常是一段连续的地址。node
动态主机设置协议(DHCP)是一种使网络管理员可以集中管理和自动分配IP网络地址的通讯协议。在IP网络中,每一个链接Internet的设备都须要分配惟一的IP地址。DHCP使网络管理员能从中心结点监控和分配IP地址。当某台计算机移到网络中的其它位置时,能自动收到新的IP地址。
DHCP使用了租约的概念,或称为计算机IP地址的有效期。租用时间是不定的,主要取决于用户在某地链接Internet须要多久,这对于教育行业和其它用户频繁改变的环境是很实用的。经过较短的租期,DHCP可以在一个计算机比可用IP地址多的环境中动态地从新配置网络。DHCP支持为计算机分配静态地址,如须要永久性IP地址的Web服务器。
DHCP和另外一个网络IP管理协议BOOTP相似是DHCP的前身而且向后兼容。目前两种配置管理协议都获得了广泛使用。其中DHCP更为先进,某些操做系统如Windows NT/2000都带有DHCP服务器。DHCP或BOOTP客户端是装在计算机中的一个程序,这样就能够对其进行配置操做。vim
当DHCP客户端程序发出一个信息,要求一个动态的IP地址时,DHCP服务器会根据目前已经配置的地址,提供一个可供使用的IP地址和子网掩码给客户端,大体流程如…
(1) 客户端向服务器端发出请求 //dhcp discover
(2) 服务端要响应客户端的请求 //dhcp offer
(3) 而后客户端要选择请求使用哪一项 //dhcp request
(4)最后服务端进行最终确认 //dhcp ack
注意:DHCP服务不可跨网段,不可跨越物理路由器,且整个过程都是广播的形式centos
也叫DHCP Realy ,服务是面向服务端单播,面向客户端广播
其功能就是帮忙把有DHCP服务的提供给另外一个没有DHCP服务器的网络
固然,用腿想都能想明白,本身家菜地不播种本身家的种子,难道你还给别人播种bash
DHCP的实现有两种,DHCP Relay与DHCP Server
DHCP Relay的功能在某一复杂的网络中使用比较广泛,比方说大型酒店或者运营商,因此这里不过多说明。(若是你想深刻了解,建议去学习Cisco的网络工程师课程)服务器
实验环境:基于Win平台搭建的VMware虚拟机实现
准备主机两台:一台DHCP Server端,一台DHCP Client端
配置网段地址以192.168.5.0/24 这个为例
主机环境:Centos7.2_Server_x86_64网络
运行两台虚拟机,把网络适配器修改成:自定义,特定虚拟网络。随便选择个网络,我这里用的是VMnet2,选好肯定就能够。两台都是同样的
指定一台当DHCP的Server端,地址是172.16.5.5/16,网关172.16.5.5
另外一台作DHCP客户端,网络适配器也选择自定义而且是VMnet2,这样就能够了接下来咱们进行配置dom
在Centos7系统中咱们直接用yum安装ide
安装后看它生成了哪些文件,我只贴上配置须要的文件 [root@node2 ~]# yum install dhcp [root@node2 ~]# rpm -ql dhcp dhcp-4.2.5-42.el7.centos.x86_64 //已安装 [root@node2 ~]# rpm -ql dhcp /etc/dhcp/dhcpd.conf //这个是服务的配置文件路径 /usr/lib/systemd/system/dhcpd.service //这个是Unit服务文件路径 /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example //这个是咱们要参考的配置文件
拷贝参考文件到DHCP的配置文件目录下,给一个网段分配地址工具
[root@node2 ~]# cp -a /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf //拷贝参考文件直接覆盖dhcpd.conf文件 编辑dhcpd.conf文件 vim /etc/dhcp/dhcpd.conf修改如下内容 # dhcpd.conf # # Sample configuration file for ISC dhcpd option domain-name "glances.org"; option domain-name-servers 192.168.5.5,223.5.5.5; option routers 192.168.5.5; default-lease-time 600; max-lease-time 7200; subnet 192.168.5.0 netmask 255.255.255.0 { range 192.168.5.10 192.168.5.100; } 其它的均可以注释掉 :.,$s/^[[:space:]]*[^#]/#/g 重启network服务 systemctl restart network.service 重启dhcpd服务 systemctl restart dhcpd.service 确保DHCP服务端UDP的67端口被监听 ss -tnul 测试:多启动几个客户端测试 服务端使用命令实时检测日志动态;tail -f /var/log/messages
给一个主机分配一个固定地址 Host fantasia项学习
# option definitions common to all supported networks... option domain-name "glances.org"; option domain-name-servers 192.168.5.5,223.5.5.5; option routers 192.168.5.5; default-lease-time 600; max-lease-time 7200; # DHCP server to understand the network topology. subnet 192.168.5.0 netmask 255.255.255.0 { range 192.168.5.10 192.168.5.100; } Host fantasia { //名字能够随便写 hardware ethernet 00:0c:29:6c:3f:65; //给定网卡MAC地址 fixed-address 192.168.5.30; //对应的ip地址,须是地址池以外地址 } 重启dhcpd服务;systemctl restart dhcpd 实时检测地址分配状态;tail -f /var/log/messages 客户端使用dhcp命令行工具测试:dhclient -d (d是把任务调入前台执行)
其它的给一个共享网络配置地址,咱们工做中应该使用的很少,因此不介绍。使用到直接再查看帮助就行。
在配置DHCP服务当中,区域配置文件中所定义网关是有优先级的,要注意。
全局配置;对全部配置生效,且此配置段中网关对全局有效。
子网配置;仅对子网生效,且此配置段中网关优先于全局配置中的网关。
主机配置;仅对一个主机生效,且此配置段中网关优先于全局配置中网关,也能够更改option项直接定义到你配置的子网区域中…
共享网络;对共享网络下的全部网络有效
ARP与RARP在OSI参考模型中都是位于网络层。并且它的协议数据单元是封装在以太网帧中传送而且请求是以广播形式发送。 简单点就是:ARP是IP地址解析为MAC地址,RARP是MAC地址解析为IP地址 学名:ARP,即地址解析协议。RARP即反向地址转换协议 先到这其它的再聊,预知详情,请自行Google……