DHCP服务概述:

名称:DHCP  - Dynamic Host Configuration Protocol  动态主机配置协议。

功能:DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,主要优点:

        特点: C/S 模式

自动分配IP地址,方便管理

DHCP不会同时租借相同的IP地址给两台主机;

DHCP管理员可以约束特定的计算机使用特定的IP地址;

可以为每个DHCP作用域设置很多选项;

客户机在不同子网间移动时不需要重新设置IP地址。每次都自动获取IP地址就可以了。

DHCP的缺点:

当网络上存在多服务器时,一个DHCP服务器不能查出已被其它服务器租出去的IP地址;

DHCP服务器不能跨路由器与客户机通信,除非路由器允许BOOTP协议转发。

端口:

DHCP服务使用:端口67(bootps) 68(bootpc) 。

 

安装DHCP:

[root@localhost Packages]#  RPM -ivh 软件包名如下:

dhcp-common-4.1.1-25.P1.el6.x86_64.rpm   #包括DHCP客户端和服务端共同需要的一些件

dhclient-4.1.1-25.P1.el6.x86_64.rpm       #dhcpclient

dhcp-4.1.1-25.P1.el6.x86_64.rpm      # dhcp 服务端包

yum -y install dhcp              #yum 安装dhcp

配置文件位置:

1、主配置文件:

/etc/dhcp/dhcpd.conf

 

打开这个配置文件,发现提示寻找模板配置文件:

 

2、DHCP主程序包安装好后会自动生成主配置文件的范本文件

/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample

 

补充:开源服务软件里, 以.sample 结尾的文件是软件的模板样例文件,需要关注下。

现在我们将范本配置文件复制到/etc 目录下替换掉空白dhcpd.conf 主配置文件。

[root@xuegod63~]# cp  -r  /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

 

注意:复制完以后,不要启动。因为配置文件没有写。不写一般都会报错。需要注意!

 

 

一、主配置文件配置:

配置文件:/etc/dhcp/dhcpd.conf 部分配置解释

# option definitions common to all supported networks...    #定义全局配置,通用于所有支持的网络选项.

option domain-name "example.org";    #为客户端指定所属的域

option domain-name-servers ns1.example.org, ns2.example.org;  #为客户端指定DNS服务器地址

配置参数声明:

subnet 网络号 netmask 子网掩码 {......}

作用:定义作用域,指定子网

如:

注意:网络ip必须与DHCP 服务器的ip在同一网段

 

配置文件:

第一步: 指定服务器要分发的ip网段。

            subnet 网络号 netmask 子网掩码 {  配置参数  结束使用 }

第二步: 指定动态ip的地址范围。

               range 起始IP 地址结束IP 地址 ;

  第三步: 为客户端指定默认网关。

           option routers IP 地址 ;

第四步:为客户端指定DNS 服务器ip地址。

option domain-name-servers IP 地址

  第五步: 定义默认IP 租约时间,以秒为单位的租约时间。

               default-lease-time 600;

  第六步: 定义客户端IP租约时间的最大值,当客户端超过租约时间,却尚未更新IP 时,最长可以使用该IP 的时间。 单位秒

               max-lease-time 7200;   (数字)

        }

结束使用大反括号,第五、第六步,可以忽略!

 

开启服务:

[root@xuegod63~]# sytemctl  start  dhcpd                 #临时启动DHCP服务;

[root@xuegod63~]# systemctl  enable  dhcpd            #开机自动启动dhcp服务;

查看端口起来了吗?发现端口是67证明启动成功!

[root@xuegod63~]# netstat  -anpu  |  grep “:67”

例:

               复制完dhcp模板,进入dhcp主配置文件。( cp  /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf

 

[root@abcabc ~]#  vim  /etc/dhcp/dhcpd.conf

 

subnet 192.168.10.0 netmask 255.255.255.0 {

  range 192.168.10.150 192.168.10.222;

  option domain-name-servers 8.8.8.8,144.144.144.144;

  option routers 192.168.10.1;

}

 

为主机留IP地址:

例:

host  abc  {                                                                  #红色为主机名称

  hardware ethernet  00:0c:29:ee:5c:75 ;                   #红色字体为mac地址

  filename  "192.168.10.200";                                     #红色字体为客户机预留IP地址

}

 

二、客户机获取DHCP:

进入客户机Linux系统网卡配置文件,如下:

[root@xuegod64 network-scripts]# vim ifcfg-ens35

TYPE="Ethernet"

BOOTPROTO="dhcp"    ##改成dhcp模式

DEFROUTE=yes

PEERDNS=yes

PEERROUTES=yes

IPV4_FAILURE_FATAL=no

#IPADDR=192.168.10.102

#NETMASK=255.255.255.0

#GATEWAY=192.168.10.254

#DNS1=192.168.10.254

NAME=eth0

UUID=278a13d0-553c-4e4f-adeb-0b72d166ae53                 # 可以省略

DEVICE=eth0

ONBOOT=yes

 

重启网卡:

[root@xuegod64 network-scripts]# ifdown ens35 && ifup ens35

然后xuegod64改为自动获取IP地址。

查看:

[root@xuegod64 network-scripts]# ifconfig ens35

ens35: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255

        inet6 fe80::20c:29ff:fe07:3630  prefixlen 64  scopeid 0x20<link>

        ether 00:0c:29:07:36:30  txqueuelen 1000  (Ethernet)

        RX packets 5  bytes 864 (864.0 B)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 9  bytes 1242 (1.2 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

查看默认网关

[root@xue64~]# route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0

0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0

查看DNS

[root@xuegod64 network-scripts]# cat /etc/resolv.conf

;generated by /sbin/dhclient-script

search xuegod.cn

nameserver  192.168.1.1

Centos7安装及配置DHCP服务的更多相关文章

  1. Kali Linux常用服务配置教程安装及配置DHCP服务

    Kali Linux常用服务配置教程安装及配置DHCP服务 在Kali Linux中,默认没有安装DHCP服务.下面将介绍安装并配置DHCP服务的方法. 1.安装DHCP服务 在Kali Linux中 ...

  2. CentOS7安装和配置ftp服务

    目录 一.ftp简介 二.安装ftp软件包 1.安装ftp服务器 2.安装ftp客户端 三.配置ftp服务器 1.关闭SELINUX 2.配置ftp数据端口参数 3.开通防火墙 4.启动vsftpd服 ...

  3. PXE 自动安装物理机 (DHCP服务由路由提供, 不能再配置)

    目录 1. PXE 自动安装物理机 (DHCP服务由路由提供, 不能再配置) 1.1. 需要的软件 1.2. 启动 proxy dhcp 服务 1.3. 关键的几个配置文件 PXE 自动安装物理机 ( ...

  4. ubuntu16.04上安装配置DHCP服务的详细过程

    DHCP服务器是为客户端机器分配IP地址的,所有分配的IP地址都保存在DHCP服务器的数据库中.为了在子网中实现DHCP分配IP地址,需要在目标主机上安装配置DHCP服务 1. 安装DHCP服务 安装 ...

  5. OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 6.在计算节点上安装并配置计算服务Nova

    安装和配置计算节点这个章节描述如何在计算节点上安装和配置计算服务. 计算服务支持几种不同的 hypervisors.为了简单起见,这个配置在计算节点上使用 :KVM <kernel-based ...

  6. 烂泥:centos安装及配置DHCP服务器

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 有关DHCP服务器的配置一直打算学习,这几天终于抽出时间来专门学习这个知识点. DHCP:动态主机配置协议,在此就不多做介绍.不清楚的童鞋,可以去百度下 ...

  7. Centos7安装并配置mysql5.6完美教程

    Centos7安装并配置mysql5.6完美教程 Centos7将默认数据库mysql替换成了Mariadb,对于我们这些还想使用mysql的开发人员来说并不是一个好消息.然而,网上关于Linux安装 ...

  8. 【运维技术】VM虚拟机上使用centos7安装docker启动gogs服务教程【含B站视频教程】

    VM虚拟机上使用centos7安装docker启动gogs服务视频教程 BiliBili视频教程链接飞机票,点我 使用VMware Workstation安装Centos7 MinMal系统 第一步: ...

  9. CentOS7安装及配置vsftpd (FTP服务器)

    CentOS7安装及配置vsftpd (FTP服务器) 1.安装vsftpd 1 yum -y install vsftpd 2.设置开机启动 1 systemctl enable vsftpd 3. ...

随机推荐

  1. 二进制协议gob及msgpack介绍

    本文主要介绍二进制协议gob及msgpack的基本使用. 最近在写一个gin框架的session服务时遇到了一个问题,Go语言中的json包在序列化空接口存放的数字类型(整型.浮点型等)都序列化成fl ...

  2. mybatis-generator:generate 生成代码配置踩坑详解

    mybatis-generator:generate 生成代码配置踩坑不少,在此留下笔记以便后续填坑 一.mysql返回时间问题 错误信息: [ERROR] Failed to execute goa ...

  3. BASK、BFSK、BPSK调制方法的Matlab程序实现

    %以下为手动编程方法,也可调用matlab集成函数dmod,具体调制方式见doc. n = [0:0.01:5.99]; x1 = ones(1,100); x2 = zeros(1,100); x3 ...

  4. FreeSql (二十八)事务

    FreeSql实现了四种数据库事务的使用方法,脏读等事务相关方法暂时未提供.主要原因系这些方法各大数据库.甚至引擎的事务级别五花八门较难统一. 事务用于处理数据的一致性,处于同一个事务中的操作是一个U ...

  5. JAVA截取后String字符串六位字符

    public static void main(String[] args){ String cellphone="; String pwd = cellphone.substring(ce ...

  6. Cookie的有效路径

    程序实现: protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletE ...

  7. Elastic Stack 笔记(九)Elasticsearch5.6 集群管理

    博客地址:http://www.moonxy.com 一.前言 集群搭建好以后,在日常中就要对集群的使用情况进行监控,对于一个多节点集群,由于网络连接问题,出现宕机.脑裂等异常情况都是有可能发生的.E ...

  8. MOOC 数据库系统笔记(一):初步认识数据库系统

    概述 什么是数据库 数据库是电子化信息的集合 数据库起源于规范化"表(Table)"的处理. Table:以按行按列形式组织及展现的数据. E.F.Codd,基于对"表( ...

  9. Java 从入门到进阶之路(六)

    之前的文章我们介绍了 Java 的数组,本章我们来看一下 Java 的对象和类. Java 是一种面向对象语言,那什么是对象呢,对象在编程语言中属于一个很宽泛的概念,我们可以认为万事万物都是对象,每个 ...

  10. Django&,Flask&pyrthon原生sql语句 基本操作

    Django框架 ,Flask框架 ORM 以及pyrthon原生sql语句操作数据库 WHAT IS ORM? ORM( Object Relational Mapping) 对象关系映射 , 即通 ...