DHCP服务介绍及搭建

DHCP服务介绍及搭建

网络配置

静态指定

动态获取: bootp:boot protocol MAC与IP一一静态对应

dhcp:增强的bootp,动态

DHCP: (Dynamic Host Configuration Protocol)

动态主机配置协议

局域网协议,UDP协议

主要用途:

用于内部网络和网络服务供应商自动分配IP地址给用户

用于内部网络管理员作为对所有电脑作集中管理的手段

使用场景

自动化安装系统

解决IPV4资源不足问题

 

 

DHCP共有八种报文

DHCP DISCOVER:客户端到服务器

DHCP OFFER :服务器到客户端

DHCP REQUEST:客户端到服务器

DHCP ACK :服务器到客户端

DHCP NAK:服务器到客户端,通知用户无法分配合适的IP地址

DHCP DECLINE :客户端到服务器,指示地址已被使用

DHCP RELEASE:客户端到服务器,放弃网络地址和取消剩余的租约时间

DHCP INFORM:客户端到服务器, 客户端如果需要从DHCP服务器端获取更为详细的配置信息,

则发送Inform报文向服务器进行请求,极少用到

 

续租

50% :租赁时间达到50%时来续租,刚向DHCP服务器发向新的DHCPREQUEST请求。如果dhcp服务没有拒绝的理由,则回应DHCPACK信息。当DHCP客户端收到该应答信息后,就重新开始新的租用周期

87.5%:如果之前DHCP Server没有回应续租请求,等到租约期的7/8时,主机会再发送一次广播请求

DHCP服务简介

同网段多DHCP服务

DHCP服务必须基于本地

先到先得的原则

相关协议

Arp

rarp

跨网段

RFC 1542 Compliant Routers

dhcrelay: 中继

 

DHCP实现

Linux DHCP协议的实现程序:dhcp, dnsmasq(dhcp,dns)

Dhcp Server

/usr/sbin/dhcpd

/etc/dhcp/dhcpd.conf –> /etc/rc.d/init.d/dhcpd

/etc/dhcp/dhcpd6.conf–> /etc/rc.d/init.d/dhcpd6

/usr/sbin/dhcrelay

/etc/rc.d/init.d/dhcrelay

dhcp server:67/udp

dhcp client: 68/udp

dhcpv6 client:546/udp

Dhcp client

dhclient

自动获取的IP信息: /var/lib/dhclient

 

dhcpd.conf:

帮助参考:man 5 dhcpd.conf

全局配置

subnet {

}

host {

 

}

地址分配记录

/var/lib/dhcpd/dhcpd.leases

 

dhcpd.conf示例

option domain-name “magedu.com”;

option domain-name-servers 192.168.0.1,8.8.8.8;

default-lease-time 86400;

max-lease-time 86400;

subnet 192.168.100.0 netmask 255.255.255.0 {

range 192.168.100.1 192.168.100.200;

option routers 192.168.100.1;

}

DHCP配置文件

 

其它配置选项:

filename: 指明引导文件名称

next-server:提供引导文件的服务器IP地址

示例:(插入到subnet {}中)/etc/dhcp/dhcpd.conf

filename “pxelinux.0”;#用来网卡启动系统的文件

next-server 192.168.100.100;#网络中tftp服务器的地址

检查语法

service dhcpd configtest

 

 

nmcli con add con-name eth0 ifname eth0 type ethernt  ipv4.method manual ipv4.address 172.18.50.7/16 ipv4.gateway 172.18.0.1 ipv4.dns 223.5.5.5

 

 

DHCP服务搭建:

步骤一:安装dhcp软件包

yum install dhcp -y

 

步骤二:将dhcp范例拷贝到/etc/dhcp/下命名为dhcpd.conf

(安装完服务器后/etc/dhcp/下会有一个dhcpd.conf文件直接覆盖即可 ,原文件内没有内容,也可改名。)

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

 

步骤三:修改配置文件dhcpd.conf保存。注意”;”不要遗漏掉

vim /etc/dhcp/dhcpd.conf

……

# option definitions common to all supported networks…

option domain-name “example.org”;

option domain-name-servers 114.114.114.114,8.8.8.8;

option routers 192.168.27.1;

 

default-lease-time 600;

max-lease-time 7200;

 

log-facility local7;

 

subnet 192.168.27.0 netmask 255.255.255.0 {

range 192.168.27.50 192.168.27.200;

}

# This is a very basic subnet declaration.

 

subnet 10.254.239.0 netmask 255.255.255.224 {

range 10.254.239.10 10.254.239.20;

option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;

}

……

未命名图片

 

:wq  #保存

将除了刚刚修改的内容其余全部注释掉

(参考:在非插入模式下”:.,$s/^/#/”)

 

步骤四:启动服务

service dhcpd start

 

[root@centosmini ~]# service dhcpd start

Starting dhcpd:                                            [  OK  ]

 

[root@centosmini ~]# ss -ntlu  #查看67端口是否正常监听

 

 

2222

 

[root@centosmini ~]# cat /var/lib/dhcpd/dhcpd.leases   #查看dhcp服务器已经分配出去的地址及主机mac等

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/91152

(0)
lvshijunlvshijun
上一篇 2018-01-16 09:13
下一篇 2018-01-16 13:04

相关推荐

  • CentOS 7破解密码教程

    启动时任意键暂停启动  按e键进入编辑模式  将光标移动linux16开始的行,添加内核参数rd.break  按ctrl-x启动  mount –o remount,rw /sysroot  chroot /sysroot  passwd root  touch /.autorelabe…

    Linux干货 2016-12-01
  • CentOS Linux解决Device eth0 does not seem to be present

    CentOS Linux解决Device eth0 does not seem to be present 今天早上打开xshell链接虚拟机,突然链接不上。然后进入虚拟机执行 ifconfig 或者 ip addr list 命令发现eth0 不见。然后执行重启网卡命令发现  解决办法:   首先,打开/etc/udev/rules.d/70-p…

    Linux干货 2016-08-02
  • GNU awk工具的使用解析

    GNU awk: 简介:awk是一个数据处理工具。它比较倾向于将一行分成多个“字段”来处理。所以,awk比较适合处理小型数据。 gawk – pattern scanning and processing language 实现原理: 基本用法:gawk [options] 'program' FILE program:PAT…

    Linux干货 2016-09-21
  • bash脚本编程之流程控制if、for、while、until简介

    概述     之前介绍了一些bash脚本编程的变量、运算、条件测试的一些基础内容,了解了脚本实际上就是一些语句加上一些流程控制组合起来,实现某种功能的可执行文件。我们知道,条件测试的目的,实际就是为了实现一种流程的控制,那么本篇就简单介绍一下bash里面常见的流程控制语句,包括选择、循环等内容,具体包括以下几个部分: …

    Linux干货 2016-08-18
  • N25_第六周

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; %s@^[[:space:]]+@#&@g 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符; %s@^[[:spac:]]+@@g…

    Linux干货 2017-02-13
  • CentOS7内核编译

    一.centos7内核编译(支持ntfs文件系统) 1.下载内核源代码内核文件(https://www.kernel.org/) 2.解压缩源代码文件到指定目录 tar xvf linux-4.8.10.tar.xz -C /usr/src 3.创建软链接解压后的文件 cd /usr/src ln -s linux-4.8.10/ linux 4.复制当前系…

    Linux干货 2016-11-28