什么是DHCP?
DHCP服务(Dynamic Host Configuration Protocol,动态主机配置协议)
服务功能:为每一台连接到网络的主机动态地提供IP信息。
实验环境
VMware 、Red Hat Enterprise Linux 6 、Windows XP
为了方便实验以及后续的学习,我在本地装了一个rhel6和winxp,通过快照的方式生成两台rhel并命名为node1,node2;一台winxp命名为node3。
DHCP服务配置要求
某公司决定在内部网络中架设一台DHCP服务器,用于给局域网中的100台主机动态分配IP地址和网络环境配置信息。服务端操作系统选用Linux,客户端中有50台是Windows系统,还有50台是Linux系统。网管员为局域网规划的IP地址段是192.168.x.0/24,DHCP服务器地址是192.168.x.1/24,网关地址是192.168.x.254/24,公司还部署了内部的主从DNS服务器两台,进行内部域名y.com的名称解析,主DNS服务器地址是192.168.x.3/24,从DNS服务器地址是192.168.x.4/24,另外需要为老板的windows主机绑定IP地址192.168.x.188/24。
实验环境搭建
本次实验我们进行的是DHCP服务,我们三台主机设备硬件-->网络适配器-->仅主机模式。但是由于VMware会自动给主机进行进行DHCP分配IP地址,显然我们是不需要的。我们可以在编辑-->虚拟网络编辑器中进行配置。
并且还需要给自己本地的VMware网卡接口进行一个配置,并且网卡的IP地址不能与实验环境中的IP地址重合。所以DHCP服务器IP地址192.168.42.1肯定是不能用的。案例来说192.168.42.147这个地址在后续配置中,也不能分配给局域网中其他的设备使用,由于懒惰,就偷个懒好了....
实验操作
易忘点温馨提示
1.Linux主机需要修改网卡标识为eth0
2.Linux主机需要修改主机名
3.Linux主机需要关闭和禁用防火墙
4.Linux主机需要禁用Selinux
5.DHCP服务器需要配置本地YUM源仓库
1.设置网卡相关信息
由于实验机器是用快照生成的,网卡标识会显示为eth1,我们得先把它设置eth0,在此基础下才能进行后续的操作
# rm /etc/udev/rules.d/70-persistent-net.rules
# vim /etc/sysconfig/network-scripts/ifcfg-eth0
需要注意一下,node1作为DHCP服务器,所以获取IP方式得设置为静态。BOOTPROTO=none or static
2.修改node1主机名
# vim /etc/sysconfig/network
3.关闭和禁用防火墙
# service iptables status
# chkconfig --level 35 iptables off
4.禁用Selinux
# vim /etc/selinux/config
5.检验光驱并挂载光盘
易忘点温馨提示
1.怎么确认光驱是否存在?
2.怎么确认光驱中有光盘?
3.怎么开机自动挂载光盘?
4.光盘文件类型为iso9660,只能读不能写
# ls /dev/sr0
# fdisk -l /dev/sr0
# mkdir /cdrom
# vim /etc/fstab
6.配置本地YUM源仓库
首先得确认是否成功挂载光盘,否则后面的都做不了。
# df -hT
下一步就是设置仓库指向文件
# vim /etc/yum.repos.d/cdrom.repo
查看一下YUM仓库的有效性
# yum clean all
# yum makecache
# yum repolist
7.对node2/linux客户端配置
主要还是对node2网卡这块进行一个操作啦,在DHCP服务中,DHCP服务端需要固定IP,且需要将获取IP的方式设置为静态。而DHCP客户端这块,是需要以DHCP方式获取IP地址的,则不需要配置IP地址信息。
再就是不需要配置YUM源仓库,因为它只是一个客户端,没必要去做额外的操作。同时修改主机名的操作与node1相同,目的是更加清晰的让管理员知道这是哪一台设备。
# vim /etc/sysconfig/network-scripts/ifcfg-eth0
正式开始配置DHCP服务
1.查看 DHCP 服务端软件是否安装
# rpm -qa | grep dhcp
如果没有安装的话,那就安装一下咯~
# yum install dhcp
2.修改DHCP配置文件并查看
# vim /etc/dhcp/dhcpd.conf
此时会发现里面除了see /usr/share/doc/dhcp*/dhcpd.conf.sample外,什么都没有。我们把这个示例文件覆盖到DHCP配置文件就好~
# cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
然后再次回到DHCP配置文件进行修改
# vim /etc/dhcp/dhcpd.conf
覆盖后的文件是一套DHCP配置模板,我们在他的基础上进行修改就好了。#开头代表注释掉改行,具体修改的过程就不给大家演示了,直接显示我修改后模板内容(不包括注释项以及空格行)
# grep -v ^# /etc/dhcp/dhcpd.conf | grep -v ^$
紧接着就得运行服务了~此时如果不能运行那就说明你的配置有一些问题
# service dhcpd restart
# service dhcpd status
我在做DHCP服务配置的时候总是把subnet 这一块填写错,大家要注意一些,subnet后面紧接着的是你所配置的网段
到这里DHCP服务的配置就结束了,后面的操作是对DHCP服务进行一个检验测试
哇啊啊啊啊!!!突然发现一个致命的问题,我没有配置开机自启,开发环境中DHCP服务器重启后DHCP服务没有自动,那不是很尴尬。
# chkconfig dhcpd on
3.查看 DHCP 服务进程已运行
# ps -eaf | grep dhcpd
此时你会发现显示的进程号与查看dhcp服务运行状态时显示的进程号一致
4.查看 DHCP 服务端口已监听
# netstat -tunlp | grep dhcpd
DHCP服务端口注意一下,默认情况下端口为 UDP67和UDP68
5.查看 DHCP 客户端(Linux)已获取 IP 地址和网络环境配置信息
# dhclient
# ifconfig
6.查看 DHCP 客户端(Windows)已获取 IP 地址和网络环境配置信息
Windows下释放IP地址、重新获取IP地址、查询IP地址信息
# ipconfig /release
# ipconfig /renew
# ipconfig
总结一下
到此关于DHCP服务配置的教程就结束了,里面都是进行配置文件的修改(开机后还有),所以很多步骤是环环相扣的,大家需要自行手动重启~最后的最后感谢浩哥的指导。本文由程志辉原创独自编辑,难免会出现一些错误,欢迎大家在评论区支出,同时转载请留下版权!
飘过,看不懂,哈哈哈哈哈哈
嘿嘿,术业有专攻嘛~
这么硬核的文章,年轻人看好你!努力加油!
嘿嘿,对上课内容进行一个总结,同时方便你我他~
很不错的学习方法,这样学到的知识会更牢固。
是个狼人 我只在树莓派上接触过DHCP
DHCP服务最基础的啦,多数情况下都不需要自己去配置。话说我也想去耍耍树莓派了~