博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DHCP服务器构建
阅读量:6160 次
发布时间:2019-06-21

本文共 3456 字,大约阅读时间需要 11 分钟。

DHCP服务器构建

实验背景:

 公司要求将闲置的一台Linux 主机配置为DHCP 服务器,以便为局域网内员工的办公用机提供自动分配IP 地址的服务,以提高网络管理和维护的效率。需要满足的基本要求如下所述。

实验思路:

1.为192.168.1.0/24网段的客户机自动配置网络参数。

用来给客户机自动分配的IP地址范围是:192.168.1.50-192.168.1.100、192.168.1.120-192.168.1.200。

客户机的默认网关地址设为192.168.1.1。

客户机所使用的DNS服务器设为192.168.1.5、202.106.0.20,默认搜索域后缀为tarena.com。

将默认租约时间设为8小时,最大租约时间24小时

2.为打印服务器分配保留地址

网络打印机的MAC地址为00:c0:c3:22:46:81。

这台打印机每次开启电源后获得的IP地址都应该是192.168.1.8。

3.验证DHCP服务器的IP分配情况、客户机的租约信息

实验实践:

1 搭建实验之前的环境:

1)使用2台RHEL5虚拟机,其中一台作为DHCP服务器、另外一台作为测试用的DHCP客户机(并模拟担任网络打印机)

2)两台虚拟机的网络连接均设置为“VMnet1(Host-only)”。在VMware Workstation软件窗口中,双击虚拟机右下角状态栏的网络图标 / ,通过弹出对话框的右侧可以设置网络连接的类型

3)在虚拟网络编辑器对话框中,选中“VMnet1”,然后单击下方的“Use local DHCP service to distribute IP addresses to VMs”去掉勾选,如图-4所示,然后单击“Apply”按钮,这样可以使VMware Workstation不再对VMnet1网络提供DHCP服务,排除干扰、确保下面的DHCP服务实验顺利进行

2.DHCP服务器构建的基本准备工作。

1)为服务器配置一个固定的IP地址。

#vim /etc/sysconfig/network-scripts/ifcfg-eth0

BOOTPROTO=static

IPADDR=192.168.1.2

NETMASK=255.255.255.0

#service network rstart//配置好ip后重启服务

#ifconfig eth0//确认修改后的IP地址:

2)确认已安装有dhcp软件包。

   如果没有安装,则通过yum方式执行安装,也可以rpm找到rpm安装包直接安装

#yum -y install dhcp

3.建立dhcpd.conf配置文件,并启动dhcpd服务。

1)建立dhcp配置文件

     默认的配置文件/etc/dhcpd.conf内无任何有效配置,但是dhcp包提供了样例配置文件,可以用r +路径 直接导入

#vim /etc/dhcpd.conf

 末行模式下: r /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sampl  //导入

2)修改dhcpd.conf配置文件,根据实验要求进行配置。

ddns-update-style none;                         //禁用动态DNS更新 ignore client-updates;                         //忽略客户端的动态更新 default-lease-time 28800;                 //默认租约8小时

max-lease-time 86400;                     //最大租约24小时

option domain-name "tarena.com";         //默认搜索域

option domain-name-servers 192.168.1.5,202.106.0.20;  //DNS服务器

subnet 192.168.1.0 netmask 255.255.255.0 {        //定义作用域

range 192.168.1.50 192.168.1.100;             //IP范围1

range 192.168.1.120 192.168.1.200;             //IP范围2

option subnet-mask 255.255.255.0;             //分配的子网掩码

option routers 192.168.1.1;                     //分配的默认网关地址 }

3)确认配置无误后,启动dhcpd服务。

#service dhcpd configtest//测试配置文件

OK

#service dhcpd start //启动服务

#chkconfig --list dhcpd //查看自启状态

#chkconfig --level35 dhcpd on//更改自启状态

4.在客户机上以DHCP方式获取地址。

1)临时配置——使用dhclient –d调试模式

  如果只是希望测试一下dhcpd服务是不是好用,可以直接使用带-d选项的dhclient工具,表示调试模式。运行时会占用当前终端,输出DHCP会话结果,比如,以下操作及输出可看出eth0已经成功从DHCP服务器获得地址192.168.1.200:

#dhclient -d eth0

... ...

bound to 192.168.1.200 -- renewal in 12945 seconds.

  按Ctrl+c快捷键可结束调试,返回命令行后检查eth0网卡的IP地址,应该已经自动配置为通过DHCP方式获得的192168.1.200

#ifconfig eth0

#route -n //检查客户机默认网关地址,为192.168.1.1

# cat /etc/resolv.conf //检查客户机的DNS服务器地址,192.168.1.5和202.106.0.20,默认搜索域是tarena.com

2)永久配置——直接改网卡配置文件。

#vim /etc/sysconfig/network-scripts/ifcfg-eth0

  如果希望客户机一直采用DHCP方式来配置网络,应该修改网卡配置文件。使用system-config-network,或者直接vim改ifcfg-eth0文件,打开文件后将其中的“BOOTPROTO=none”修改为“BOOTPROTO=dhcp”

# service network restart //配置好后重新启动服务

5.为网络打印机配置保留地址。

1)修改dhcpd.conf配置,添加保留地址设置。

# vim /etc/dhcpd.conf

.. ..

subnet 192.168.1.0 netmask 255.255.255.0 { .. ..

host printer {                             //为printer配置保留地址 hardware ethernet 00:c0:c3:22:46:81;    //已知网络打印机的MAC地址 fixed-address 192.168.1.8; } //设置固定地址

2)查找mac地址

#ping 192.168.1.8

#arp -a//找到mac地址后复制到配置文件中即可

3)重启网络打印机,确认获取到的IP地址,或者先释放原先的ip,再重新获取一下

#ipconfig eth0 //重启后查看ip地址,在xp系统中查看用ipconfig

或者

#ipconfig /release//释放原先的ip地址

#ipconfig /renew//重新从dhcp服务器获取新的ip地址

#ipconfig//检测ip地址是否是192.168.1.8

实验总结:

 附:在客户机上查看曾经获取过的IP租约信息:

 查看DHCP客户端的/var/lib/dhclient/dhclient-eth0.leases文件,其中记录了曾经获取过的IP租约信息

 在服务器端查看已分配出去的IP地址信息:

查看DHCP服务器端的/var/lib/dhcpd/dhcpd.leases文件,其中记录了已经分配出去的IP租约(不包括保留地址)相关信息,如下所示:

查看端口信息: #netstat ln |grep +端口号

     #netstat  tulnp |grep +服务名称

dhcpd服务正常监听UDP 67端口

服务端 UDP 67、客户端 UDP 68

      本文转自Jx战壕  51CTO博客,原文链接:http://blog.51cto.com/xujpxm/1365257,如需转载请自行联系原作者

你可能感兴趣的文章
登记申请汇总
查看>>
Android Jni调用浅述
查看>>
CodeCombat森林关卡Python代码
查看>>
(二)Spring Boot 起步入门(翻译自Spring Boot官方教程文档)1.5.9.RELEASE
查看>>
Shell基础之-正则表达式
查看>>
JavaScript异步之Generator、async、await
查看>>
讲讲吸顶效果与react-sticky
查看>>
c++面向对象的一些问题1 0
查看>>
售前工程师的成长---一个老员工的经验之谈
查看>>
Get到的优秀博客网址
查看>>
老男孩教育每日一题-第107天-简述你对***的理解,常见的有哪几种?
查看>>
Python学习--time
查看>>
在OSCHINA上的第一篇博文,以后好好学习吧
查看>>
Spring常用注解
查看>>
linux:yum和apt-get的区别
查看>>
Sentinel 1.5.0 正式发布,引入 Reactive 支持
查看>>
数据库之MySQL
查看>>
2019/1/15 批量删除数据库相关数据
查看>>
数据类型的一些方法
查看>>
Webpack 2 中一些常见的优化措施
查看>>