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

相关推荐

  • 设计模式 ( 十八 ) 策略模式Strategy(对象行为型)

    设计模式 ( 十八 ) 策略模式Strategy(对象行为型) 1.概述         在软件开发中也常常遇到类似的情况,实现某一个功能有多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能。如查找、排序等,一种常用的方法是硬编码(Hard Coding)在一个类中,如需要提供多种查找算…

    Linux干货 2015-07-28
  • CentOS 7和CentOS 6 使用gpg工具实现公钥加密和解密

    运行环境: [root@Shining ~]# uname -a Linux Shining.ACG 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x…

    Linux干货 2016-12-01
  • grep、egrep正则表达式之初窥门径

    何谓正则表达式 正则表达式,又称正规表示法、常规表示法(Regular Expression,在代码中常简写为regex、regexp或RE),是一类字符所书写的模式,其中许多字符不表示其字面意义,而是表达控制或通配等功能。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的…

    2015-03-19
  • 03硬链接和软链接的区别和联系

    首先我们需要了解linux下硬链接以及软连接的基本概念. 硬链接:新建的文件是已经存在的文件的一个别名,当原文件删除时,新建的文件仍然可以使用. 软链接:也称为符号链接,新建的文件以“路径”的形式来表示另一个文件,和Windows的快捷方式十分相似,新建的软链接可以指向不存在的文件. 硬链接和软连接之间的区别: 1.硬链接和原来的文件没有什么区别,而且共享一…

    Linux干货 2016-10-20
  • 第四周练习与作业

    一、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的行首的空白字符 复制文件至/tmp目录下: cp /etc/profile /tmp/ vim /tmp/profile 进入文件命令模式下,使用正则表达式  ;%s/^[[:blank:]]\+//g 二、复制/etc/rc.d/init.d/fu…

    2017-08-05