[DHCP服务]——一个验证DHCP原理实验(VMware)
大致实验拓扑图
DHCP Server端的配置
1. 安装DHCP
# yum -y install dhcp
2. 拷贝配置文件
# cp /usr/share/doc/dhcp-4.1./dhcpd.conf.sample /etc/dhcp/dhcpd.conf
3. 编辑配置文件
# vim /etc/dhcp/dhcpd.conf
(1)默认租约时间
#指定默认的租约时间的长度,单位:秒
default-lease-time 3600;
(2)最大租约时间
#指定默认的最大租约时间, 单位:秒
max-lease-time 72000;
(3)日志记录的方式
#日志记录的方式
log-facility local7;
#意味着服务启动后可在/var/log/message、/var/log/boot.log看到dhcp服务的日志
#因为/etc/rsyslog.conf中规定了local7*的日志方式路径:
# cat /etc/rsyslog.conf
# Save boot messages also to boot.log
local7.* /var/log/boot.log
(4)DHCP-DNS互动更新模式
#配置DHCP-DNS为互动更新模式
ddns-update-style none;
#因为DHCP客户端取得的IP通常是一直变动的,所以某台主机的主机名与IP的对应关系很难处理
#设置此选项表示DHCP可以通过ddns来更新主机名与IP的对应关系。不需要则设置为none。
(5)忽略客户端的DNS更新功能
ignore client-updates;
(6)域名设置
option domain-name "centos.vbird";
#当你要查找主机名时,DNS系统会自动帮你在所要查找的主机名后加上这个域名后缀
#这个设置会修改客户端的/etc/resolv.conf文件,我们会看到两行内容:
search centos.vbird
domain centos.vbird
(7)指定给客户端分配的DNS
#最多写3个
option domain-name-servers 8.8.8.8,202.103.96.112;
#这个设置可以修改客户端的/etc/resolv.conf文件,即这也是服务器可以给客户端分配的网络参数之一,我们会看到:
nameserver 8.8.8.8
nameserver 202.103.96.112
(8)subnet 网络地址 netmask 子网掩码 {...}
#IP分配设置(地址池)
subnet 172.16.10.0 netmask 255.255.255.0 {
range 172.16.10.2 172.16.10.100; #设置一个可以分配给客户端的IP地址范围
range 172.16.10.200 172.16.10.250; #range可以有多段
option routers 172.16.10.1; #给客户端分配的网关
default-lease-time 7200; #注意如果这些配置参数写到subnet{}中,则以局部变量为准
max-lease-time 15400;
} subnet 172.16.20.0 netmask 255.255.255.0 { #这里是设置的另一个网段的
range 172.16.20.2 172.16.20.100;
range 172.16.20.200 172.16.20.250;
option routers 172.16.20.1;
}
(9)host 主机名 {...}
#在需要的情况下给某一客户端固定分配一IP
host sxkj #这个主机名可以自己设
{
hardware ethernet 00:0C:29:B6:DF:5E; #客户端的MAC
fixed-address 172.16.10.10; #给予的固定IP
}
(10)更多的设置参数可以man查看
# man 5 dhcpd.conf
4. 把提供DHCP服务的网卡名写入到/etc/sysconfig/dhcpd文件中(有两张以上网卡时)
# cat /etc/sysconfig/dhcpd
DHCPDARGS="eth0"
5.开启dhcp服务
# service dhcpd start
6.日志、端口等监听和查看
# cat /var/log/message #查看日志(若服务开启失败,要学会查看日志来查找原因)
# tail -f /var/log/boot.log #对dhcpd服务进行监听
# netstat -tuanp | grep dhcpd #查看监听端口
udp 0.0.0.0: 0.0.0.0:* /dhcpd
DHCP Relay端(中继服务器)的配置
1.安装dhcp(不然你会找不到/etc/sysconfig/dhcrelay那个文件的)
yum install -y dhcp
2. 开启中继服务器的路由转发功能
# vim /etc/sysctl.conf
net.ipv4.ip_forward = #将这个值设置为1
# sysctl -p #重新加载/etc/sysctl.conf使设置生效
3. 设置中继选项
# vim /etc/sysconfig/dhcrelay
INTERFACES="eth0 eth1"
DHCPSERVERS="172.16.10.1" #写出真正要找的DHCP服务器
4.启动dhcp中继服务
# service dhcrelay start
DHCP 客户端验证
1. 使用dhcp获取IP
# dhclient -r eth0:释放ip地址
# dhclient eth0 : 获得ip,要求网卡配置文件里采用dhcp方式获得ip
# BOOTPROTO=dhcp:网卡配置文件中
2. 配置成功后客户端的哪些文件有变化?
# /etc/resolv.conf :里面的域名和dns服务器会和配置中的"domain_name"、"domain_name_server"
# route -n:可以查看到路由的变化
# netstat -tlunp | grep dhcp
# /var/lib/dhclient/dhclient-eth0.leases :客户端也是有租约文件的,记录着这块网卡曾要求过的dhcp信息
3. 客户端是Windows
# ipconfig /release :释放ip
# ipconfig /renew :获得ip
补充一些实验的截图
[DHCP服务]——一个验证DHCP原理实验(VMware)的更多相关文章
- DHCP协议格式、DHCP服务搭建、DHCP协商交互过程入门学习
相关学习资料 http://www.rfc-editor.org/rfc/rfc2131.txt http://baike.baidu.com/view/7992.htm?fromtitle=DHCP ...
- [SSH服务]——一个SSH无密码登陆实验
实验拓扑图 实验描述 机房内有两台服务器: (1)B服务器10.0.10.158,充当Web服务器,有普通用户user_00 (2)C服务器10.0.10.191,充当Mysql服务器,有普通用户us ...
- linux之DHCP服务端搭建 ( ip分配 四个阶段原理)
DHCP服务 ip分配 四个阶段原理 1.DHCP服务目的 协议 作用 租约 原理四个阶段 动态主机配置协议(Dynamic Host Configuration Protocol,动态主机配置协议) ...
- DHCP服务相关实验
一.DHCP 相关介绍 1.dhcp服务相关 软件名: dhcp #DHCP服务软件包 dhcp-common #DHCP命令软件包(默认已安装) 服务名: dhcpd #DHCP服务名 dhcrel ...
- Kali Linux常用服务配置教程DHCP服务原理
Kali Linux常用服务配置教程DHCP服务原理 动态主机配置协议(Dynamic Host Configuration Protocol,简称DHCP)是一个局域网的网络协议,基于UDP协议工作 ...
- 2-4-搭建DHCP服务实现动态分配IP地址-NTP网络时间同步
本节所讲内容: •DHCP服务器工作原理 •使用DHCP为局域网中的机器分配IP地址 •使用DHCP为服务器分配固定IP地址 •ntpdate加计划任务同步服务器时间 ---------------- ...
- HCNA Routing&Switching之DHCP服务
前文我们了解了STP的端口状态.计时器以及端口状态切换和网络拓扑变化相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15140672.html:今天我们 ...
- DHCP及DHCP多作用域服务器工作原理
一.DHCP服务是什么 DHCP称为动态主机配置协议.DHCP服务允许工作站连接到网络并且自动获取一个IP地址.配置DHCP服务的服务器可以为每一个网络客户提供一个IP地址.子网掩码.缺省网关.一个W ...
- DHCP协议及基本实现原理
DHCP(Dynamic Host Configuration Protocol):动态主机配置协议. DHCP的优缺点 DHCP服务优点:网络管理员可以验证IP地址和其它配置参数,而不用去检查每个主 ...
随机推荐
- markdown语法学习效果预览
注: 结合markdown官方文档 其中大部分例子和说明文字都摘自官方文档 官方链接:Markdown: Basics (快速入门). 一 段落.标题.区块代码 Markdown 支持两种标题的语法, ...
- 关于原生js的一些研究
搬砖,原文地址:http://segmentfault.com/a/1190000002911253 callee和caller function inner(){ console.log(argum ...
- Android 弹出框
1.Java package com.fish.helloworld; import android.app.Activity; import android.app.AlertDialog; imp ...
- android中关闭软键盘
/**隐藏软键盘**/ View view = getWindow().peekDecorView(); if (view != null) { InputMethodManager inputman ...
- Navicat for PostgreSQL 必须知道的十大功能
Navicat for PostgreSQL 是一套易于使用的图形化 PostgreSQL 数据库管理工具.可使用强劲的 SQL 编辑器创建和运行查询.函数和使用多功能的数据编辑工具管理数据.Navi ...
- linux下最大文件数
系统级:系统级设置对所有用户有效.可通过两种方式查看系统最大文件限制1 cat /proc/sys/fs/file-max 2 sysctl -a 查看结果中fs.file-max这项的配置数量如果需 ...
- Gridview 行变色和行按钮调用前端js
1.鼠标移动某一行 ,变色 protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Ro ...
- 如何在linux中配置PHP环境
yum -y install httpd php mysql mysql-server php-mysql//安装mysql扩展yum -y install mysql-connector-odbc( ...
- Android照相机应用
前言 Android在设计架构的时候,采用了mashup(混搭)的设计理念,也就是说一切都是组建,自己写的是组件,别人提供的也是组件,使用的时候只要符合相关协议就可以把他们当作自己的组件.比如系统提供 ...
- 查看SDCard是否被挂载
获取Environment.getExternalStorageState(),然后得到的字符串进行查看 //android.os.Environment.MEDIA_MOUNTED="mo ...