Centos7搭建DHCP服务器

一、DHCP服务简介

****1. DHCP服务简介****

DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,DHCP 协议主要是用来自动为局域网中的客户机分配 TCP/IP 信息的网络协议,并完成每台客户机的 TCP/IP 协议配置。当我们将局域网中客户机IP地址设置为动态获取方式时,DHCP服务器就会根据DHCP协议给客户机自动分配IP地址,使得客户机能够使用这个IP地址。

DHCP的前身是BOOTP协议(Bootstrap Protocol),BOOTP被创建出来为连接到网络中的设备自动分配地址,后来被DHCP取代了,DHCP比BOOTP更加复杂,功能更强大。所有的IP网络参数(包括IP地址、网关和DNS服务器地址等)都由DHCP服务器集中管理,并负责处理客户端的DHCP要求;而客户端则会使用从服务器分配的IP网络参数。

****2. 使用DHCP的优点****

  • 减少管理员的工作量;

  • 避免IP冲突;

  • 减少收入错误的可能;

  • 能方便地更改网络的IP网段;

  • 移动计算机后不用重新配置网络信息;

  • 提高IP地址的利用率。

****3. DHCP的工作过程****

2.png
  1. 第1步:(请求DHCP服务器)

  2. 客户端在局域网广播发送 DHCP discovery包,寻找DHCP服务器,即向255.255.255.255发送特定的广播信息,每一台安装了TCP/IP协议的主机都会有这个广播地址,但只有DHCP服务器才会做出回应。

  3. 第2步:(提供IP地址)

  4. 服务器收到DHCP discovery包后,向客户机发送一个包含分配的IP地址和其它设置的 DHCP offer 包,目的告诉客户机,我能为你提供IP地址。

  5. 第3步:(选择IP地址)

  6. 客户机收到DHCP offer提供信息包后,(如果客户机在一段时间内没有接收到DHCP服务器发出dhcp offer包,则会重新发送dhcp discover。如果广播区域内不止一台dhcp服务器,则由客户机决定使用哪个)客户机选择第一个接收到的提供信息包,以广播的方式再发送一个DHCP request请求信息包,客户机向服务器请求IP地址。

  7. 第4步:(IP地址提供确认)

  8. 服务端收到客户机回应的DHCP request 请求信息包之后,便向客户机发送一个DHCP ack 确认信息包,告诉客户机可以使用它提供的IP地址。

  9. 第5步:(重新登录)

  10. 以后DHCP客户机每次使用此IP地址时,就不需要再发送DHCP discovery包了,而是直接发送一个包含前一次所分配的IP地址的DHCP request请求信息。当DHCP服务器收到这一信息以后,它会继续让客户机使用此IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的客户机使用时,则DHCP服务器给客户机回答一个DHCP nack否认信息。当原来的客户机收到此DHCP nack否认信息后,它就必须重新发送DHCP discovery寻找信息来请求新的IP地址。

  11. 第6步:(更新租约)

  12. DHCP服务器向客户机出租的IP地址都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。如果客户机要延长其IP租约,必须更新其IP租约。客户机启动时和IP租约期限过一半时,客户机都会自动向DHCP服务器发送更新其IP租约的信息。

****4. DHCP客户机自动更新IP租约****

客户机租约期限已过去50%,自动尝试更新租约;当期限过去87.5% 时,发出广播再次更新租约;若租约已经到期(100%),客户机必须立即停止使用当前的IP地址。然后客户机开始新的DHCP租约过程,尝试租用新的IP地址。

二、系统环境

系统平台: CentOS 7.3

DHCP Server: 192.168.8.88

更改主机名,写/etc/hosts记录

|

vim /etc/hosts

192.168.8.88   DHCP         --最后添加DHCP服务器IP地址和主机名/别名

|

关闭防火墙

| # systemctl stop firewalld --临时关闭防火墙

systemctl disable firewalld --永久关闭防火墙

|

关闭selinux

临时关闭:

| # setenforce 0
|

永久关闭:

| # vim /etc/selinux/config

SELINUX=disabled                 --将enforcing改为disabled

reboot --重启系统永久生效

|

三、CentOS下的DHCP服务

准备两台机器,一台作为DHCP服务器,一台作为客户机,如下图:

1.png

****1. 在服务器上安装DHCP软件包****

| # yum -y install dhcp* --安装dhcp软件包

如果已经安装过了,则显示“无须任何处理”

|

QQ截图20171223231211.png

安装好后,配置文件目录:/etc/dhcp/dhcpd.conf

            分给客户端IP的记录文件:/var/lib/dhcpd/dhcpd.leases

****2. 配置DHCP****

把系统默认的样例复制到/etc/dhcp/dhcpd.conf文件里

|

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y --输y覆盖原文件

|

3.png

|

vim /etc/dhcp/dhcpd.conf   --修改配置文件

7 option domain-name "example.org"; --DNS域名

8 option domain-name-servers ns1.example.org, ns2.example.org; --DNS的域服务器

9

10 default-lease-time 600; --默认的租约时间,秒为单位

11 max-lease-time 7200; --最大的租约时间,秒为单位

14 #ddns-update-style none; --表示要不要把IP地址的更新情况告诉DNS服务器,默认是关闭的

22 log-facility local7; --定义日志服务,可以在日志配置文件中查看具体日志位置,默认是:/var/log/boog.log,但是在/var/log/messages里面也会记录dhcp日志

47 subnet 192.168.8.0 netmask 255.255.255.0 { --分配的网段及子网掩码,代表只在192.168.8.x这个C类网段里生效,子网掩码设为255.255.255.0

48 range 192.168.8.30 192.168.8.60; --代表给客户机分配可用的IP范围,起始到结束,尽量不要包含DHCP服务器的IP地址

49 option domain-name-servers 192.168.8.88; --配置要分配给客户端的DNS地址,这里我们设为DHCP服务器的IP地址

50 option domain-name "internal.example.org"; --DNS的域名

51 option routers 192.168.8.88; --配置分配给客户机的路由网关,这里我们设为DHCP服务器的IP地址

52 option broadcast-address 192.168.8.255; --给客户机指定广播地址,配置192.168.8.x这个网段的广播地址

53 default-lease-time 600; --指定租约时间,秒为单位

54 max-lease-time 7200; --指定最大租约时间,秒为单位

55 }

75 host fantasia { --将MAC地址和IP绑定,host后面的名字随意,如:fantasia

76 hardware ethernet 08:00:07:26:c0:a5; --MAC地址

77 fixed-address fantasia.fugue.com; --IP地址

78 }

85 class "foo" { --定义多个子网,class后面写组名

86 match if substring (option vendor-class-identifier, 0, 4) = "SUNW";

87 }

88

89 shared-network 224-29 { --定义多个子网,要从大往小写

90 subnet 10.17.224.0 netmask 255.255.255.0 {

91 option routers rtr-224.example.org;

92 }

93 subnet 10.0.29.0 netmask 255.255.255.0 {

94 option routers rtr-29.example.org;

95 }

96 pool {

97 allow members of "foo";

98 range 10.17.224.10 10.17.224.250;

99 }

100 pool {

101 deny members of "foo";

102 range 10.0.29.10 10.0.29.230;

103 }

104 }

|

修改红色标注位置就可以了,修改完成之后,保存退出。

****3、启动DHCP服务****

|

systemctl restart dhcpd.service --重启DHCP服务

systemctl enable dhcpd.service --设置为开机自启动

netstat -anlp | grep dhcpd --查看dhcp服务端口为67

|

4.png

****4、来到客户机验证****

把客户端机的网卡配置成dhcp,再重启网络服务

|

vim /etc/sysconfig/network-scripts/ifcfg-ens33

BOOTPROTO=dhcp                                 --网卡指定方式改为dhcp

systemctl restart network.service --重启网卡

|

5.png

打开日志文件查看分配的IP地址

服务器:

| # tail -f /var/log/messages --在服务器上监听日志
|

客户机:

打开两个终端窗口:一个查看日志,一个重启网络。

查看日志

| # tail -f /var/log/messages
|

重启网络

| # systemctl restart NetworkManager --重启这个服务,每次重启网络服务时,系统都会重新去DHCP服务器上获取IP地址 |

查看IP

| # ifconfig --查看IP
|

image.png

查看网关

| # route -n | grep UG --查看网关
|

image.png

查看路由

| # cat /etc/resolv.conf --查看路由
|

image.png

****5、如果要把客户机分配的IP给固定的话,可以在服务器做如下配置****

|

vim /etc/dhcp/dhcpd.conf --分给客户机IP的记录文件

在文件的最下面加上下面一段代码即可

75 host Client { --host后面接的是客户机主机名称,可以自定义,建议为主机名

76 hardware ethernet 00:0c:29:82:6f:db; --代表客户机的物理MAC地址

77 fixed-address 192.168.8.40; --代表如果有遇到物理MAC地址为上面一行的,则分配这行的IP给它

78 }

|

|

systemctl restart dhcpd.service --重启DHCP服务

测试,重复第4步

|

****6、客户机获取IP****

先清除客户机IP地址缓存

|

systemctl restart NetworkManager --重启这个服务,每次重启网络服务时,系统都会重新去DHCP服务器上获取IP地址

ifconfig --查看IP,应该为设定的IP,即192.168.8.40

|

image.png
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,919评论 6 502
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,567评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,316评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,294评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,318评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,245评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,120评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,964评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,376评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,592评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,764评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,460评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,070评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,697评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,846评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,819评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,665评论 2 354

推荐阅读更多精彩内容