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

相关推荐

  • 位置变量在Shell脚本编程中的作用

    位置变量:         如果要向一个shell脚本传递信息,可以使用位置参数完成此功能;参数相关数目传入脚本,此数目可以任意多,但只有前9个可以被访问,使用shift命令可以改变这个限制;参数从第一个开始,在第九个结束;每个访问参数前要加$符号;第一个参数为0,表示预留保存实…

    Linux干货 2016-08-15
  • 第十周:Linux系统启动流程及shell脚本练习

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 一张图足以说明一切: 2、为运行于虚拟机上的CentOS 6添加一块新硬件,提供两个主分区;   (1) 为硬盘新建两个主分区;并为其安装grub;   (2) 为硬盘的第一个主分区提供内核和ramdisk文件;为第二个分区提供rootfs;   (3)…

    Linux干货 2016-11-30
  • Find命令的使用

    Find命令的基本用法 在Linux系统中find命令是一个强大文件查找类工具,它支持根据文件名,权限,文件大小,访问以及修改时间查找,使用方法如下: find [option] [查找起始路径] [查找条件] [处理动作] 起始路径:指定查找文件或目录的路径,默认为当前目录 查找条件:可根据文件名,权限,文件大小以及从属关系查找文件 处理动作:动查找到的文…

    Linux干货 2017-08-28
  • Linux软件包安装

    Linux系统和Windows系统在软件包安装上区别很大:     软件运行环境:         API: Application Programming Interface    POSIX: P…

    Linux干货 2016-08-21
  • 文本处理三剑客之Sed(行编辑器)

    sed(流编辑器,行编辑器)     是一种流编辑器,一次处理一行内容,处理时把当前处理的行存储在临时缓存中,成为“模式空间”,接着用sed命令处理缓冲区的内容,处理完毕后吧缓冲区内容输出到屏幕接着处理下一行。这样不断重复到末尾。文件内容并没有改变。除非使用重定向输出才会改变内容。 sed:行编辑器(全屏编辑器:vi)   &n…

    Linux干货 2016-08-15
  • 搜索引擎-倒排索引基础知识

    1.单词——文档矩阵        单词-文档矩阵是表达两者之间所具有的一种包含关系的概念模型,图3-1展示了其含义。图3-1的每列代表一个文档,每行代表一个单词,打对勾的位置代表包含关系。          …

    Linux干货 2015-12-10