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)
上一篇 2018-01-16 09:13
下一篇 2018-01-16 13:04

相关推荐

  • vim编辑器及shell基础

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

    Linux干货 2017-12-08
  • vim文本编辑器简单用法

    vim最基础的用法

    2017-09-09
  • Linux哲学思想以及自己的理解

    Linux哲学思想: #1 一切接文件 #2  单一目的小程序 #3 组合小程序完成复杂任务 #4 文本文件保存配置信息 #5 尽量避免捕获用户接口 #6 提供机制,而非策略 自己的理解:(玩Linux时间比较短,没什么太深刻的理解) #1 一切皆文件 我们说“Linux中一切皆文件”直观地可以这样理解:所有的东西,设备、内存都模拟成文件,我们可以…

    Linux干货 2016-08-15
  • 对虚拟机键入Ctrl+Alt+Delete的详细说明

            日常中我们用Windows系统时经常使用Ctrl+Alt+Delete来换出任务管理的菜单,进行任务管理,linux中也有这样的键入命令,但不是管理任务,而是重启系统!!!那么我们就应该注意了,不要误操作重启服务器。       &n…

    2017-03-28
  • Linux文件查找命令find和压缩解压缩

    概述     Linux系统上一切皆文件,那么随着时间的推移和管理的服务器增加,在众多的文件中,如何找到我们需要的文件,这就需要用到文件查找命令了。本章就分享下关于文件查找命令的一些内容和压缩解压缩的相关内容。     具体分为一下几个部分:    …

    Linux干货 2016-08-16
  • RAID简介

    RAID是什么? RAID英文名字叫Redundant Arrays of Independent Disks,也叫磁盘阵列?阵列有是什么意思?通俗的理解就是把很多的硬盘组织在一起来使用。       RAID可以根据性能来划分为两种:有无冗余(容错)能力     &n…

    Linux干货 2016-02-14