码迷,mamicode.com
首页 > 系统相关 > 详细

在Linux下搭建DHCP服务

时间:2015-09-13 20:09:32      阅读:475      评论:0      收藏:0      [点我收藏+]

标签:dhcp、linux、dhcp中继

*思维导图

技术分享

一、概述

1、DHCP:自动主机配置协议

端口号是:

  • ipv4对应的是udp67、68

  • ipv6对应的是udp546、547


2、作用:实现向主机自动分配IP、默认网关、DNS等地址信息


3、好处:

  • 减少管理员的工作量

  • 避免输入错误

  • 避免IP冲突

  • 方便客户端配置

  • 提高IP地址利用率


4、分配方式:

  • 自动分配:分配到一个IP地址永久使用

  • 手动分配:由DHCP管理员专门指定IP地址

  • 动态分配:使用完后释放该IP,供其他客户机使用


5、为什么要使用服务器搭建DHCP

专一,稳定性高


二、DHCP租约过程(像租房)

技术分享

1、租约过程:

1)客户端发送DHCP discover广播包,寻找DHCP服务器

客户端源ip用的是0.0.0.0,源mac是自己本机的mac。


2)服务器回应DHCP offer包

提供可用的ip,租约信息等


3)客户端发送DHCP request

宣告自己所选择的DHCP服务器

发送arp广播确认IP地址是否没有被占用


4)服务器发送ACK确认

这个ack包里包含了给客户端分配的所有的网络参数


2、客户端重启后:

1)发送带有IP地址的DHCP Request请求包


2)若IP地址没有分配使用,则DHCP服务器响应ACK确认信息,客户端继续使用该IP


3)若IP地址被其他人占用,则DHCP服务器响应NACK包,告知客户端IP已被占用。这时客户端会重新发送Discover广播包


3、更新租约:

1)IP地址租期到达50%后,须重新更新租期


2)客户端直接向服务器发送DHCP Request包来更新租期


三、DHCP服务器配置

1、相关文件

服务名:dhcpd、dhcrelay(中继服务)


主配置文件:/etc/dhcp/dhcpd.conf


模版文件:/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample


中继配置文件:/etc/sysconfig/dhcrelay


2、主配置文件相关参数解释

#全局配置:

option domain-name          #设置DNS域

option domain-name servers     #设置DNS服务器IP地址

default-lease-time         #默认租约时间

max-lease-time             #最大租约时间


#子网选项:

subnet 172.16.1.0 netmask 255.255.255.0 {

  range 172.16.1.100 172.16.1.200;

  option domain-name-servers 114.114.114.114,223.5.5.5;

  option routers 172.16.1.1;

  default-lease-time 600;

  max-lease-time 7200;

}

#subnet   表示当前DHCP要分配的网段。注意该DHCP服务器一定要位于这个网段里

#range    表示分配的地址范围

#option domain-name-servers     表示分配的DNS地址

#option routers    表示分配的网关地址


#保留地址选项:

#有时我们需要为某一个主机配置固定IP地址,而host选项选项满足了这一需求。

host server2 {

  hardware ethernet 08:00:07:26:c0:a5;

  fixed-address 172.16.1.166;

}

#hardware ethernet   为指定主机的mac

#fixed-address  为该主机分配到的特定IP地址


3、dhcp服务器配置流程

1)拷贝模版文件

由于默认的主配置文件/etc/dhcp/dhcpd.conf里没有任何内容(除了注释),不方便配置。所以需要把模版文件拷贝并改名覆盖主配置文件


2)修改主配置文件

添加subnet,把模版中没用的subnet删掉

如果有保留地址,则在host选项中添加相关配置


3)开启dhcp服务

service dhcpd start                 #启动dhcp服务

netstat -anpu | grep dhcp       #查看dhcp状态

注意:如果有报错启动失败,查看/var/log/messages日志,看报错原因,进行排错


4)查看租约信息

服务器端租约文件:/var/lib/dhcpd/dhcpd.leases


客户端租约文件:/var/lib/dhclient/dhclient-eth0.leases



4、dhcp中继配置流程

1)在dhcp服务器上的主配置文件/etc/dhcp/dhcpd.conf中添加需要中继的subnet并重启dhcp服务


2)在中继服务器上开启包转发功能

[root@localhost ~]# vim /etc/sysctl.conf

net.ipv4.ip_forward = 1

[root@localhost ~]# sysctl -p

#更新配置文件


3)在中继服务器上的配置文件/etc/sysconfig/dhcrelay中添加参数

[root@localhost ~]# vim /etc/sysconfig/dhcrelay

INTERFACES=“eth0 ehth1”          #声明你要使用哪几块网卡中继

DHCPSERVERS=“172.16.1.201”     #指定dhcp服务器


4)在中继服务器上启动中继服务

service dhcrelay start


本文出自 “华哥在路上” 博客,请务必保留此出处http://wshstc.blog.51cto.com/10676059/1694283

在Linux下搭建DHCP服务

标签:dhcp、linux、dhcp中继

原文地址:http://wshstc.blog.51cto.com/10676059/1694283

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!