为局域网搭建DHCP服务器


DHCP概述


1)了解DHCP服务

DHCP(Dynimic Host Configuration Protocol,动态主机配置协议)是由IEIF(Internet工作任务小组)设计开发的,专门用于为TCP/IP网络的计算机自动分配TCP/IP参数的协议,DHCP服务避免了因手工设置IP地址所产生的错误,同时也避免了把一个IP地址分配给多台工作站所造成的地址冲突;DHCP提供了安全,可靠且简单的TCP/IP网络设置,降低了配置IP地址的负担

2)使用DHCP的好处

减少管理员的工作量

避免输入错误的可能

避免IP冲突

当网更改IP地址段时,不需要在重新配置每个用户的IP地址

提高了IP地址的利用率

方便客户端的配置

DHCP的工作原理

1)DHCP的分配方式

DHCP服务器提供了三种IP分配方式:自动分配、手动分配和动态分配

自动分配是当DHCP客户机第一次成功的从DHCP服务器获取到一个IP地址后,就永久地使用这个IP地址

手动分配是由DHCP服务器管理员专门指定IP地址

动态分配时当DHCP客户机第一次从DHCP服务器获取到IP地址后,并非永久地使用该地址,每次使用完后,DHCP客户机就需要释放这个IP地址,供其他客户机使用

2)DHCP的租约过程

客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程;租约过程分为四个步骤:

客户机请求IP地址(客户机发DHCP Discover广播包)

服务器响应(服务器发DHCP Offer广播包)

客户机选择IP地址(客户机发DHCP Request广播包)

服务器确定租约(服务器发DHCP ACK广播包)

1、客户端请求IP

DHCP Discover

2、服务器响应

DHCP Offer

3、客户机选择IP

DHCP Request

4、服务器确定租约

DHCP ACK

5、重新接入网络

dhcp软件安装

dhcp软件在系统镜像光盘里就已经提供了,只需要使用rpm或者yum软件安装即可

如果使用yum安装需要提前配置好yum

[[email protected] ~]# mkdir /mnt/cdrom
[[email protected] ~]# mount /dev/cdrom /mnt/cdr
[[email protected] ~]# cat /etc/yum.repos.d/base.repo 
[base]
name=centos
baseurl=file:///mnt/cdrom
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-$releasever
 
 
[[email protected] ~]# rpm -ivh /mnt/cdrom/Packages/dhcp-4.2.5-42.el7.centos.x86_64.rpm
或者
[[email protected] ~]# yum install -y dhcp
 
使用下面的命令可以查看dhcp软件的介绍和安装生成文件及目录
[[email protected] ~]# yum info dhcp
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Installed Packages
Name        : dhcp
Arch        : x86_64
Epoch       : 12
Version     : 4.2.5
Release     : 42.el7.centos
Size        : 1.4 M
Repo        : installed
Summary     : Dynamic host configuration protocol software
URL         : http://isc.org/products/DHCP/
License     : ISC
Description : DHCP (Dynamic Host Configuration Protocol) is a protocol which allows
            : individual devices on an IP network to get their own network
            : configuration information (IP address, subnetmask, broadcast address,
            : etc.) from a DHCP server. The overall purpose of DHCP is to make it
            : easier to administer a large network.
            : 
            : To use DHCP on your network, install a DHCP service (or relay agent),
            : and on clients run a DHCP client daemon.  The dhcp package provides
            : the ISC DHCP service and relay agent.
 
[[email protected] ~]# rpm -ql dhcp
/etc/NetworkManager
/etc/NetworkManager/dispatcher.d
/etc/NetworkManager/dispatcher.d/12-dhcpd
/etc/dhcp
/etc/dhcp/dhcpd.conf
/etc/dhcp/dhcpd6.conf
/etc/openldap/schema/dhcp.schema
/etc/sysconfig/dhcpd
/usr/bin/omshell
/usr/lib/systemd/system/dhcpd.service
/usr/lib/systemd/system/dhcpd6.service
/usr/lib/systemd/system/dhcrelay.service
/usr/sbin/dhcpd
/usr/sbin/dhcrelay
/usr/share/doc/dhcp-4.2.5
/usr/share/doc/dhcp-4.2.5/dhcpd.conf.example
/usr/share/doc/dhcp-4.2.5/dhcpd6.conf.example
/usr/share/doc/dhcp-4.2.5/ldap
/usr/share/doc/dhcp-4.2.5/ldap/README.ldap
/usr/share/doc/dhcp-4.2.5/ldap/dhcp.schema
/usr/share/doc/dhcp-4.2.5/ldap/dhcpd-conf-to-ldap
/usr/share/man/man1/omshell.1.gz
/usr/share/man/man5/dhcpd.conf.5.gz
/usr/share/man/man5/dhcpd.leases.5.gz
/usr/share/man/man8/dhcpd.8.gz
/usr/share/man/man8/dhcrelay.8.gz
/usr/share/systemtap/tapset/dhcpd.stp
/var/lib/dhcpd
/var/lib/dhcpd/dhcpd.leases
/var/lib/dhcpd/dhcpd6.leases

dhcp基本配置

前提条件:

DHCP服务器与客户端主机已正常连通,并在同一网络中

如果客户端主机使用了DHCP方式动态获取IP地址,而网络中没有DHCP服务器,或者服务器出现问题,则客户端就不能正常取得地址了;如果是Windows,它将从B类网段192.254.0.0中挑选一个IP地址作为自己的IP地址,并继续每隔5分钟尝试与DHCP服务器进行通信,一旦与DHCP取得通信,客户机将放弃自己配置的IP地址,使用DHCP服务器分配的IP地址;

1、DHCP服务器配置

DHCP服务器需要向客户端分配IP地址,服务器自身需要使用一个静态的IP地址

[[email protected] ~]# ifconfig eno16777736

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

inet 172.16.1.10  netmask 255.255.0.0  broadcast 172.16.255.255

inet6 fe80::20c:29ff:fe65:8475  prefixlen 64  scopeid 0x20<link>

ether 00:0c:29:65:84:75  txqueuelen 1000  (Ethernet)

RX packets 7051  bytes 6763047 (6.4 MiB)

RX errors 0  dropped 0  overruns 0  frame 0

TX packets 1808  bytes 225665 (220.3 KiB)

TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[[email protected] ~]# vi /etc/dhcp/dhcpd.conf

...

option domain-name "bsg.com";

option domain-name-servers 202.106.0.20, 8.8.8.8,172.16.1.254;

default-lease-time 3600;

max-lease-time 7200;

...

subnet 172.16.1.0 netmask 255.255.0.0 {

range 172.16.1.100 172.16.1.200

}

...

[[email protected] ~]# systemctl start dhcpd.service

[[email protected] ~]# ss -tunl

Netid  State      Recv-Q Send-Q    Local Address:Port       Peer Address:Port

udp    UNCONN     0      0                     *:40620                             *:*

udp    UNCONN     0      0                     *:67                                *:*

udp    UNCONN     0      0                    :::18696                            :::*

tcp    LISTEN     0      128                   *:22                                *:*

tcp    LISTEN     0      100           127.0.0.1:25                                *:*

tcp    LISTEN     0      128                  :::22                               :::*

tcp    LISTEN     0      100                 ::1:25                               :::*

2、客户端主机配置

如果客户端之前使用静态的IP地址,需要将获取方式改为dhcp自动获取并删除IP地址,修改完配置文件后重新启动网卡

Linux客户端

Windows客户端

在DHCP服务器上查看IP地址分配及租约情况

[[email protected] ~]# cat /var/lib/dhcpd/dhcpd.leases
    # The format of this file is documented in the dhcpd.leases(5) manual page.
    # This lease file was written by isc-dhcp-4.2.5
     
    lease 172.16.1.102 {
      starts 2 2016/11/01 13:55:33;
      ends 2 2016/11/01 13:57:51;
      tstp 2 2016/11/01 13:57:51;
      cltt 2 2016/11/01 13:55:33;
      binding state free;
      hardware ethernet 00:0c:29:96:ea:a9;
      uid "\001\000\014)\226\352\251";
    }
    lease 172.16.1.100 {
      starts 2 2016/11/01 13:56:35;
      ends 2 2016/11/01 14:06:35;
      tstp 2 2016/11/01 14:06:35;
      cltt 2 2016/11/01 13:56:35;
      binding state active;
      next binding state free;
      rewind binding state free;
      hardware ethernet 00:0c:29:9d:3a:2a;
    }
    server-duid "\000\001\000\001\037\253K\017\000\014)e\204u";

为客户机保留IP地址


1、获取客户机的mac地址

2、修改DHCP的配置文件

mac地址不区分大小写,windows客户端的mac地址中的"-"需要换成":"

[[email protected] ~]# vi /etc/dhcp/dhcpd.conf
    ...
    host ftpsrv {
      hardware ethernet 00:0c:29:9d:3a:2a;
      fixed-address 172.16.1.253;
    }
    host winc1 {
      hardware ethernet 00:0c:29:96:ea:a9;
      fixed-address 172.16.1.50;
    }
    ...
     
    [[email protected] ~]# systemctl restart dhcpd.service
    [[email protected] ~]# ss -tnul
    Netid  State      Recv-Q Send-Q    Local Address:Port                   Peer Address:Port              
    udp    UNCONN     0      0                     *:67                                *:*                  
    udp    UNCONN     0      0                     *:31306                             *:*                  
    udp    UNCONN     0      0                    :::45651                            :::*                  
    tcp    LISTEN     0      128                   *:22                                *:*                  
    tcp    LISTEN     0      100           127.0.0.1:25                                *:*                  
    tcp    LISTEN     0      128                  :::22                               :::*                  
    tcp    LISTEN     0      100                 ::1:25                               :::*

3、客户端重新获取IP地址

时间: 2024-08-07 17:02:08

为局域网搭建DHCP服务器的相关文章

Linux学习随笔——Linux环境中搭建DHCP服务器

2015.8.30    DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要用途:给内部网络或网络服务供应商自动分配IP地址.DHCP有3个端口,其中UDP67和UDP68为正常的DHCP服务端口,分别作为dhcp server和dhcp client的服务端口      DHCP服务器需要安装TCP/IP协议,需要设置静态IP地址 子网掩码和默认网关 搭建DHCP服务器: 一.设置DHCP服务器

RedHat5.9下搭建DHCP服务器

DHCP服务器的搭建(服务器本身一般都设置为静态ip地址) 准备工作:给服务器本身设置固定ip地址 [[email protected] ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0   //配置文件 # Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) DEVICE=eth0                  //设备名为eth0,第一块物理网卡 BOOTPROTO

Linux下搭建DHCP服务器

一.DHCP所需软件包dhcp-common-4.1.1-34.Pl.el6.centos.x86_64dhcp-4.1.1-34.pl.el6.centon.x86_64二.编辑主配置文件 vi/etc/dhcp/dhcpd.conf ddns-update-style interim; ignore client-updates; shared-network ifs {        option domain-name     "ifs.com";        option 

centos下搭建dhcp服务器

centos下搭建dhcp服务器 一.软件环境 CentOS release 6.5 dhcp-4.1.1-51.P1.el6.centos.x86_64 dhcp-common-4.1.1-51.P1.el6.centos.x86_64 二.网络拓扑 dhcp服务器--H3c交换机(7503)-- H3c交换机(5500)-- H3c交换机(3100)--dhcp客户端(办公电脑) 网段: 10.2.240.0/24 10.2.180.0/24 dhcp服务器ip:10.2.33.253 三.

linux下搭建dhcp服务器及部署中继代理详解

搭建DHCP服务器,本机eth0网卡IP为1.1.1.18/24,网关为1.1.1.20 yum install -y dhcp  安装dhcp rpm软件包 cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample  /etc/dhcpd.conf vim /etc/dhcpd.conf,主要修改以几行: subnet 1.1.1.0 netmask 255.255.255.0 {              #设置子网段 option routers    

Linux系统搭建DHCP服务器

                              实验要求:在Linux系统搭建DHCP服务器 实验步骤: 第一步:设置DHCP服务器的iP地址和网关 第二步:查看有没有安装DHCP服务,如果没有安装就要到mnt/下的Packages文件中找到DHCP安装包,找到之后再安装. 安装之前首先我们要把系统安装光盘挂载到mnt目录下,然后在查看一下有没有挂载上 第三步:查看并安装DHCP 第四步:安装完后,查看配置文件 第五步:显示配置文件,并且将/usr/share/doc/dhcp-4.

如何搭建DHCP服务器及自动获取IP地址及相关操作

DHCP服务相关理论知识 DHCP服务分为以下三点, IP地址(例:192.168.1.0) 子网掩码(例:255.255.255.0) 网关 DHCP服务的好处: 减少管理员的工作量 避免输入错误的可能 避免IP冲突 提高了IP地址的利用率 方便客户端的配置 DHCP服务的分配方式: 自动分配:分配到一个IP地址后永久使用 手动分配:由DCHP服务器管理员专门指定IP地址 动态分配:使用完之后释放该IP,供其它客户机使用 DHCP租约的过程(四个步骤):1.客户机请求IP(Discover):

搭建DHCP服务器

DHCP简单介绍: DHCP原名(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段,在RFC 2131中有详细的描述.DHCP有3个端口,其中UDP67和UDP68为正常的DHCP服务端口,分别作为DHCP Server和DHCP Client的服务端口:546号端口用于DHCPv6 Clien

中小型网络的域环境搭建--第四季(搭建DHCP服务器)

<接第三季> 根据第一季里的域环境拓扑图,我这次来介绍怎样安装DHCP服务器.在实际的应用环境中,一个只有十几台电脑的公司使用手动设置IP地址还没什么问题,但是如果有几十台或几百台电脑的公司再使用手动设置IP就会很麻烦,会出现IP冲突等现象.这时使用动态主机配置协议(DHCP)就是很好的选择,它指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码. 在实验环境中,我还是使用第三季中搭建好的AD域服务器来做DHCP服务器,在实际应用中你也可以另搭建一