DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手。
  DHCP有3个端口,其中UDP68和UDP67为正常的DHCP服务端口,分别作为DHCP Client(广播请求配置)和DHCP Server(回应广播请求)的服务端口;546号端口用于DHCPv6 Client,而不用于DHCPv4,是为DHCP failover服务,这是需要特别开启的服务,DHCP failover是用来做“双机热备”的。
 
使用虚拟机做该实验,常见的问题:
1. 局域网里面出现多个 DHCP 服务器,比如vmware 里面没有把vmnet1 网段的dhcp 服务关闭,解决方法:
  使用vmware 的Virtuan Network Editor 来设置vmnet1 的网段,关闭该网段的DHCP 服务(我实验主机的网络环境是 host-only/仅主机 模式,所以各位关闭的时候要注意下自己实验主机使用的是什么网络);
 
2. NetworkManager 服务干扰,解决方法:
# chkconfig --level 2345 NetworkManager off
# service NetworkManager stop
3. vmware上的vmnet1 的IP自动变化,导致该IP 与DHCP 服务器的配置文件不相符,解决方法:
  使用vmware 的Virtuan Network Editor 来设置vmnet1 的网段,这样vmnet1 的IP 就会自动设置好了
 
一、基本搭建:
1、实验环境
1.1、 一台虚拟机做服务器,另外一台虚拟机做客户机,都连接到 host-only 网络vmnet1
1.2、用 vmware 的Virtual Network Editor 确保存在所需的 host-only 网络,并关闭 vmware 在相应网络的 dhcp 功能
2、实验准备(服务器端)
# service iptables stop --暂时关闭防火墙
# setenforce 0 --暂时关闭 selinux
# service NetworkManager stop --关闭网络管理服务
# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static --服务器不使用dhcp获取IP
IPADDR=192.168.33.128 --我的host-only网络网段是: 192.168.33.0
GATEWAY=192.168.33.2 --vmware虚拟机里的网关一般是 XX.XX.XX.2
# yum install dhcp* --安装DHCP服务
3、简单配置dhcp
# vim /etc/dhcp/dhcpd.conf --一份最简单的配置,仅有下面几行。
allow bootp;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.33.0 netmask 255.255.255.0 {
option routers 192.168.33.2; --给 client 的默认网关
option subnet-mask 255.255.255.0; --给 client 的子网掩码
option domain-name "abc.com"; --给 client 的搜索域
option domain-name-servers 192.168.33.2; --给 client 的域名服务器
range dynamic-bootp 192.168.33.100 192.168.33.111; --可供分配的IP范围
}
# service dhcpd restart --重启 dhcp 服务
4、测试(client端)
# vim /etc/sysconfig/network-scripts/ifcfg-eth0 --客户端在虚拟机中也要使用host-only网络模式
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp --获取IP地址方式为通过dhcp服务
# service network restart --重启网络
# ifconfig --确实从我们的DHCP服务器中获得了IP地址,而且还是范围内的第一个IP,100
inet addr:192.168.33.100 Bcast:192.168.33.255 Mask:255.255.255.0
--我们也可以做更进一步的测试,在服务器中将 DHCP 服务关闭。然后在到客户端上运行命令 service network restart ,会发现,一直卡在那里。
 
二、搭建多个局域网中的DHCP服务
1、实验环境
  1.1、准备三台虚拟机,两张host-only模式的网卡,vmware默认有一张host-only模式的网卡VMnet1,我们再添加一张VMnet2,如下:
 
   这样,一张新的 host-only 网卡添加成功,网段为 192.168.253.0 ; 记得去掉 vmware 自带的 DHCP服务。
  1.2、物理机要连上 VMnet1&&VMnet2 两张网卡,两台虚拟机分别连上其中一张。
  1.3、将三台机器网卡配置好
    1.3.1、服务器如下(物理机有两张):
 
     注意网卡设备名与MAC地址以及网段之间的对应关系。
    1.3.2、客户机如下:
DEVICE=eth0
HWADDR=00:0C:29:02:B1:61
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp
2、配置DHCP服务器
  # vim /etc/dhcp/dhcpd.conf --配置多局域网服务
allow bootp;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.133.0 netmask 255.255.255.0 {
option routers 192.168.133.1;
option subnet-mask 255.255.255.0;
option domain-name "abc.com";
option domain-name-servers 192.168.133.3;
range dynamic-bootp 192.168.133.100 192.168.133.111;
}
subnet 192.168.253.0 netmask 255.255.255.0 {
option routers 192.168.253.1;
option subnet-mask 255.255.255.0;
option domain-name "def.com";
option domain-name-servers 192.168.253.3;
range dynamic-bootp 192.168.253.100 192.168.253.111;
}
  # service dhcpd restart
3、测试(client端)
# service network restart --两台实验客户机重启网络
# ifconfig --查看IP地址,如下为连接网络 host-only (VMnet1)的主机IP
  inet addr:192.168.133.100 Bcast:192.168.133.255 Mask:255.255.255.0
# ifconfig --查看IP地址,如下为连接网络 host-only (VMnet2)的主机IP
  inet addr:192.168.253.100 Bcast:192.168.253.255 Mask:255.255.255.0
--我们也可以做更进一步的测试,在服务器中将 DHCP 服务关闭。然后在到客户端上运行命令 service network restart ,会发现,一直卡在那里。
 
 

DHCP服务搭建的更多相关文章

  1. DHCP协议格式、DHCP服务搭建、DHCP协商交互过程入门学习

    相关学习资料 http://www.rfc-editor.org/rfc/rfc2131.txt http://baike.baidu.com/view/7992.htm?fromtitle=DHCP ...

  2. Linux 之dhcp服务搭建

    DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议 dhcp服务器端监控端口67 涉及的配置文件:/etc/dhcp/dhcpd ...

  3. CentOS7 DHCP 服务搭建

    一.实验环境 1.VMware12.俩台Linux(Ser  和  Client ).DHCP安装包. 二.操作流程 1.安装DHCP 2.配置DHCP的配置文件:  /etc/dhcp/dhcpd. ...

  4. 24、dhcp服务搭建

    1.dhcp介绍: DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,DHCP 协议主要是用来自动为局域网中的客户机分配 TCP/IP 信息的网络协 ...

  5. DHCP服务

    DHCP服务 DHCP服务(需要dhcp命令):负责ip,掩码,网关地址,DNS地址等自动分发的软件服务 /usr/sbin/dhcpd或/usr/sbin/dhcrelay(中继命令):执行程序 / ...

  6. dhcp服务简单配置

    dhcp服务搭建 注意事项: > 配置虚拟机虚拟网络编辑器,取消"使用本地DHCP服务将IP地址分配给虚拟机" > 虚拟机网络连接设置为"仅主机模式" ...

  7. DHCP服务原理与搭建(Linux系统+路由器,二选一方案)

    大家都知道上网的最基本前提是要在终端上设置IP.子网掩码.网关.DNS等地址信息,在家里或者在办公室很多时候打开电脑后发现就可以上网,并没有手动设置IP.掩码.DNS地址也能上网,这是什么原因呢?其实 ...

  8. centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课

    centos  DNS服务搭建  DNS原理  使用bind搭建DNS服务器 配置DNS转发 配置主从  安装dig工具  DHCP  dhclient  各种域名解析记录  mydns DNS动态更 ...

  9. DHCP服务基本搭建

    DHCP原理 DHCP租约四部曲: A:客户端进行IP请求 当一个DHCP客户机启动时,会自动将自己的IP地址配置成0.0.0.0,由于使用0.0.0.0不能进行正常通信,所以客户机就必须通过DHCP ...

随机推荐

  1. 求幂大法,矩阵快速幂,快速幂模板题--hdu4549

    hdu-4549 求幂大法.矩阵快速幂.快速幂 题目 M斐波那契数列 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 ...

  2. 《Effective C++(第三版)》 的55条建议

    1. 让自己习惯C++(Accustoming yourself to C++) 条款01: 视C++ 为一个语言联邦(View C++ as a federation of languages) 条 ...

  3. linux 安装php bz2扩展

    折腾了半天,最大的坑就是我是用lnmp一键安装php环境,php7下面没有ext文件夹,有个include下面虽然有个ext 但是里面没有需要的bz2 也尝试去pecl  和 pear 上面去找  无 ...

  4. Install NDK in Eclipse/Android Studio

    1. Download NDK https://developer.android.com/tools/sdk/ndk/index.html 2.Install NDK $ tar xvf andro ...

  5. TortoiseGit学习系列之Windows上TortoiseGit的安装详解(图文)

    不多说,直接上干货! TortoiseGit的安装准备 首先你得安装windows下的msysgit. 安装版本控制器客户端TortoiseGit [不习惯英文的朋友,也可以下个语言包]. 下载地址: ...

  6. webpack使用 babili-webpack-plugin 报错 "original.line and original.column are not numbers"

    按照这个解决 https://github.com/chentsulin/electron-react-boilerplate/issues/1300 changing "babili-we ...

  7. 1-2 Mobx 入门实践之TodoList(官方Demo)

    第一步:导入模块 import React, { Component } from 'react'; import { observable, autorun,computed } from 'mob ...

  8. 如何将本地文件通过终端上传到linux服务器或从linux主机下载文件到本地

    第一种方式: SecureCRT下上传文件只需在shell终端仿真器中输入命令“rz”,即可从弹出的对话框中选择本地磁盘上的文件,利用Zmodem上传到服务器当前路径下.下载文件只需在shell终端仿 ...

  9. js控制表格隔行变色

    只是加载时候隔行变一个颜色,鼠标滑动上去时候没有变化 <table width="800" border="0" cellpadding="0& ...

  10. 【转载】 历届Turing奖得主名单

    Turing奖最早设立于1966年,是美国计算机协会在计算机技术方面所授予的最高奖项,被喻为计算机界的诺贝尔奖.它是以英国数学天才Alan Turing先生的名字命名的,Alan Turing先生对早 ...