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

相关推荐

  • 5.程序包管理与内核命令的使用

    1、  显示/boot/grub/grub.conf中以至少一个空白字符开头的行; ~]#  grep -E “^[[:space:]]+” //boot/grub/grub.conf root (hd0,0) kernel /vmlinuz-2.6.32-279.el…

    Linux干货 2017-07-30
  • Linux的发展史和Linux的终端类型

    Linux的发展史和Linux的终端类型 前言:    随着时代的发展,Linux所占的市场份额越来越大,目前几乎百分之九十的服务器市场都被Linux占据。接下来我们来聊聊Linux的发展史。 简单的说:Linux操作系统是1998年的8月芬兰的一个叫Linus Torvalds的大学生写出来的一个类minix的系统。 具体分析: Lin…

    Linux干货 2016-10-17
  • 初识Linux-即使是997也不能停止学习

    1.计算机的组成及其功能:    从1946年第一台通用计算机ENIAC诞生至今,几乎所有的计算机系统都是建立在冯诺依曼体系结构上的。那么何为冯诺依曼体系结构? 冯诺依曼体系结构:        控制器:是整个计算机的中枢,负责计算机的整体调度工作,将指令从存储器中取出,并对指令进行解释执行。 &n…

    Linux干货 2016-10-29
  • N22第七周作业

    1.创建一个10G的分区,并格式为ext4的文件系统;     (1)要求其block大小为2048,预留空间百分比为2,卷标为MYDATA,默认挂载属性包含acl; # fdisk /dev/sdb 欢迎使用 fdisk (util-linux 2.23.2)。 更改…

    Linux干货 2016-10-24
  • shell编程循环语法作业

    判断/var/目录下所有文件的类型 [root@www sh.log]# cat typefile.sh  #!/bin/bash #author:DYW #显示目录下文件类型 if [ $# -lt 1 ];then echo "Please&nb…

    Linux干货 2016-08-21
  • cut,sort,head,tail,uniq基本使用

    1.列出当前系统上所有已经登录的用户的用户名,同一个用户登录多次,则显示一次[root@localhost ~]# who|cut -d” ” -f1|uniqgordenroot2.取出最后登录到当前系统的用户的相关信息。[root@localhost ~]# last|head -1|cut -d’ ‘ -…

    Linux干货 2017-09-04