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协议格式、DHCP服务搭建、DHCP协商交互过程入门学习
相关学习资料 http://www.rfc-editor.org/rfc/rfc2131.txt http://baike.baidu.com/view/7992.htm?fromtitle=DHCP ...
- Linux 之dhcp服务搭建
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议 dhcp服务器端监控端口67 涉及的配置文件:/etc/dhcp/dhcpd ...
- CentOS7 DHCP 服务搭建
一.实验环境 1.VMware12.俩台Linux(Ser 和 Client ).DHCP安装包. 二.操作流程 1.安装DHCP 2.配置DHCP的配置文件: /etc/dhcp/dhcpd. ...
- 24、dhcp服务搭建
1.dhcp介绍: DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,DHCP 协议主要是用来自动为局域网中的客户机分配 TCP/IP 信息的网络协 ...
- DHCP服务
DHCP服务 DHCP服务(需要dhcp命令):负责ip,掩码,网关地址,DNS地址等自动分发的软件服务 /usr/sbin/dhcpd或/usr/sbin/dhcrelay(中继命令):执行程序 / ...
- dhcp服务简单配置
dhcp服务搭建 注意事项: > 配置虚拟机虚拟网络编辑器,取消"使用本地DHCP服务将IP地址分配给虚拟机" > 虚拟机网络连接设置为"仅主机模式" ...
- DHCP服务原理与搭建(Linux系统+路由器,二选一方案)
大家都知道上网的最基本前提是要在终端上设置IP.子网掩码.网关.DNS等地址信息,在家里或者在办公室很多时候打开电脑后发现就可以上网,并没有手动设置IP.掩码.DNS地址也能上网,这是什么原因呢?其实 ...
- centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课
centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更 ...
- DHCP服务基本搭建
DHCP原理 DHCP租约四部曲: A:客户端进行IP请求 当一个DHCP客户机启动时,会自动将自己的IP地址配置成0.0.0.0,由于使用0.0.0.0不能进行正常通信,所以客户机就必须通过DHCP ...
随机推荐
- 求幂大法,矩阵快速幂,快速幂模板题--hdu4549
hdu-4549 求幂大法.矩阵快速幂.快速幂 题目 M斐波那契数列 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 ...
- 《Effective C++(第三版)》 的55条建议
1. 让自己习惯C++(Accustoming yourself to C++) 条款01: 视C++ 为一个语言联邦(View C++ as a federation of languages) 条 ...
- linux 安装php bz2扩展
折腾了半天,最大的坑就是我是用lnmp一键安装php环境,php7下面没有ext文件夹,有个include下面虽然有个ext 但是里面没有需要的bz2 也尝试去pecl 和 pear 上面去找 无 ...
- Install NDK in Eclipse/Android Studio
1. Download NDK https://developer.android.com/tools/sdk/ndk/index.html 2.Install NDK $ tar xvf andro ...
- TortoiseGit学习系列之Windows上TortoiseGit的安装详解(图文)
不多说,直接上干货! TortoiseGit的安装准备 首先你得安装windows下的msysgit. 安装版本控制器客户端TortoiseGit [不习惯英文的朋友,也可以下个语言包]. 下载地址: ...
- webpack使用 babili-webpack-plugin 报错 "original.line and original.column are not numbers"
按照这个解决 https://github.com/chentsulin/electron-react-boilerplate/issues/1300 changing "babili-we ...
- 1-2 Mobx 入门实践之TodoList(官方Demo)
第一步:导入模块 import React, { Component } from 'react'; import { observable, autorun,computed } from 'mob ...
- 如何将本地文件通过终端上传到linux服务器或从linux主机下载文件到本地
第一种方式: SecureCRT下上传文件只需在shell终端仿真器中输入命令“rz”,即可从弹出的对话框中选择本地磁盘上的文件,利用Zmodem上传到服务器当前路径下.下载文件只需在shell终端仿 ...
- js控制表格隔行变色
只是加载时候隔行变一个颜色,鼠标滑动上去时候没有变化 <table width="800" border="0" cellpadding="0& ...
- 【转载】 历届Turing奖得主名单
Turing奖最早设立于1966年,是美国计算机协会在计算机技术方面所授予的最高奖项,被喻为计算机界的诺贝尔奖.它是以英国数学天才Alan Turing先生的名字命名的,Alan Turing先生对早 ...