欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

超详细讲解Linux DHCP服务

程序员文章站 2022-06-17 22:59:19
目录一、dhcp服务(动态主机配置协议)1.背景2.概述3.优点4.dhcp报文类型5.dhcp 的分配方式二、安装 dhcp 服务器1.dhcp 服务软件2.主配置文件三、配置步骤1.使用 dhcp...

一、dhcp服务(动态主机配置协议)

1.背景

1.手动设置工作量大且容易冲突

2.用dhcp可以减少工作量和避免地址冲突

2.概述

  • 作用:为局域网内的电脑分配ip地址
  • 架构 c/s;客户端/服务器模式
  • 实现方式:

1.为相同网段的电脑分配ip地址—dhcp

2.跨网段为另一网段的电脑分配ip地址—dhcp中继

  • dhcp使用udp协议,67号是客户机使用的,68号是服务器端的端口号

3.优点

1.减少管理员的工作量

2.避免输入错误的可能

3.避免ip地址冲突

4.当更改ip地址段时,不需要重新配置每个用户的ip地址

5.提高了ip地址的利用率

6.方便客户端的配置

4.dhcp报文类型

以找工作为例:

dhcp discover——客户端用来寻找dhcp服务器的报文
我向公司投简历来找工作

dhcp offer——dhcp服务器用来响应dhcp discover报文的报文。该报文携带了各种配置信息,例如ip地址,dns等
公司收到我的求职简历后给我发了一份offer

dhcp request——客户端请求配置确认,或者续借租期
我收到offer之后跟公司确认

dhcp ack——服务器对request报文的确认响应
公司说我ok没问题,可以过来上班 ,我找到工作了

5.dhcp 的分配方式

①自动分配:
当dhcp客户机第一次成功地从dhcp服务器获取到一个ip地址后,就永久的使用这个ip地址
②手动分配:
由dhcp服务器管理员专门指定ip地址
③动态分配:
当dhcp客户机第一次从dhcp服务器获得ip地址后,并非永久的使用该地址,而是在每次使用完后,dhcp客户机就会释放这个ip地址,供其他客户机使用

二、安装 dhcp 服务器

1.dhcp 服务软件

  • centos光盘中的 dhcp-4.2.5-47.el7.centos.x86_64.rpm
  • 一般都有,没有的话 rpm 去安装一下

超详细讲解Linux DHCP服务

  • dhcp 软件包的主要文件

主配置文件:/etc/dhcpd.conf

执行程序:/usr/sbin/dhcpd、usr/sbin/dhcrelay

2.主配置文件

  • dhcpd.conf 的内容构成
ddns-update-style  interim;     #全局配置参数
......
subnet  192.168.0.0  netmask  255.255.255.0 {       #subnet以上的都是全局配置参数;网段声明(网段、子网掩码、默认网关地址)
   option routers 192.168.0.1;       #配置选项
   ......
   default-lease-time 21600;   #配置参数
   host ns {
      ......    
      fixed-address 207.175.42.254;    #主机声明(固定一个ip给主机用的)
   }
}        
  • subnet网段声明,作用于整个子网段

range参数:设置用于分配的ip地址池

option subnet-mask参数:设置客户机的子网掩码

option routers参数:设置客户机的默认网关地址

三、配置步骤

1.使用 dhcp 动态的给 pc 机分配 ip 地址

① ensp

实验拓扑图如下

注:配置完“cloud”之后才能用串口线连接

超详细讲解Linux DHCP服务

  • 配置cloud

超详细讲解Linux DHCP服务

  • sw1基本配置
<huawei>undo terminal monitor 
<huawei>system-view 
[l2-sw1]user-interface console 0
[l2-sw1-ui-console0]idle-timeout 0 0
[l2-sw1-ui-console0]quit 
[l2-sw1]vlan batch 10 20 100
[l2-sw1]interface ethernet 0/0/1	
[l2-sw1-ethernet0/0/1]port link-type access 	
[l2-sw1-ethernet0/0/1]port default vlan 10
[l2-sw1-ethernet0/0/1]quit
[l2-sw1]interface ethernet 0/0/2	
[l2-sw1-ethernet0/0/2]port link-type access 	
[l2-sw1-ethernet0/0/2]port default vlan 20
[l2-sw1-ethernet0/0/2]quit
[l2-sw1]interface ethernet 0/0/3	
[l2-sw1-ethernet0/0/3]port link-type access 	
[l2-sw1-ethernet0/0/3]port default vlan 100
[l2-sw1-ethernet0/0/3]quit
[l2-sw1]interface ethernet 0/0/4	
[l2-sw1-ethernet0/0/4]port link-type access 	
[l2-sw1-ethernet0/0/4]port default vlan 100
[l2-sw1-ethernet0/0/4]quit
[l2-sw1]interface gigabitethernet0/0/1
[l2-sw1-gigabitethernet0/0/1]port link-type trunk
[l2-sw1-gigabitethernet0/0/1]port trunk allow-pass vlan 10 20 100
[l2-sw1-gigabitethernet0/0/1]quit
  • sw2基本配置
<huawei>undo terminal monitor 
<huawei>system-view 
[huawei]sysname l3-sw2
[l3-sw2]user-interface console 0
[l3-sw2-ui-console0]idle-timeout 0 0
[l3-sw2-ui-console0]quit
[l3-sw2]vlan batch 10 20 100
[l3-sw2]interface gigabitethernet0/0/1
[l3-sw2-gigabitethernet0/0/1]port link-type trunk
[l3-sw2-gigabitethernet0/0/1]port trunk allow-pass vlan 10 20 100
[l3-sw2-gigabitethernet0/0/1]quit
[l3-sw2]interface vlanif 10	
[l3-sw2-vlanif10]ip address 192.168.10.1 255.255.255.0	
[sw2-vlanif20]un sh
[l3-sw2]interface vlanif 20	
[l3-sw2-vlanif20]ip address 192.168.20.1 255.255.255.0	
[sw2-vlanif20]un sh
[l3-sw2]interface vlanif 100
[l3-sw2-vlanif100]ip address 192.168.100.1 255.255.255.0	
[sw2-vlanif20]un sh
[sw2-vlanif100]int g0/0/1
[sw2-gigabitethernet0/0/1]port link-type trunk 
[sw2-gigabitethernet0/0/1]port trunk allow-pass vlan all 
  • 配置dhcp中继(三层交换机)
[l3-sw2]dhcp enable               ##开启dhcp功能
[l3-sw2]interface vlanif 10	      ##配置虚接口ip,选择dhcp中继模式,请求指向dhcp服务器ip
[l3-sw2-vlanif10]dhcp select relay 	
[l3-sw2-vlanif10]dhcp relay server-ip 192.168.100.100	
[l3-sw2-vlanif10]quit 	
[l3-sw2]interface vlanif 20	
[l3-sw2-vlanif20]dhcp select relay 
[l3-sw2-vlanif20]dhcp relay server-ip 192.168.100.100	
[l3-sw2-vlanif20]quit 	
[l3-sw2]interface vlanif 100	
[l3-sw2-vlanif100]dhcp select relay 
[l3-sw2-vlanif100]dhcp relay server-ip 192.168.100.100
[l3-sw2-vlanif100]quit 

②虚拟机

  • 选择虚拟机网络类型

超详细讲解Linux DHCP服务

  • 配置网卡ip

超详细讲解Linux DHCP服务

  • 安装dhcp软件包,并查看和找到配置文件
[root@xjj ~]# yum -y install dhcp
已加载插件:fastestmirror, langpacks
loading mirror speeds from cached hostfile
软件包 12:dhcp-4.2.5-58.el7.centos.x86_64 已安装并且是最新版本
无须任何处理

[root@xjj ~]# cd /etc/dhcp/        ##dhcp的配置文件是/etc/dhcp/dhcpd.conf
[root@xjj dhcp]# ls
dhclient.d  dhclient-exit-hooks.d  dhcpd6.conf  dhcpd.conf  scripts
[root@xjj dhcp]# less dhcpd.conf        ##查看一下内容

[root@xjj ~]# cd /usr/share/doc/dhcp-4.2.5/        到该目录下去寻找dhcp配置模板
[root@xjj dhcp-4.2.5]# ls        ##“dhcpd.conf.example”
dhcpd6.conf.example  dhcpd.conf.example  ldap
[root@xjj dhcp-4.2.5]# cp dhcpd.conf.example /etc/dhcp/dhcpd.conf        ##将模板覆盖到/etc/dhcp/dhcpd.conf中
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y

[root@xjj ~]# cd /etc/dhcp/        ##回到/etc/dhcp目录下
[root@xjj dhcp]# ls
dhclient.d  dhclient-exit-hooks.d  dhcpd6.conf  dhcpd.conf  scripts
[root@xjj dhcp]# less dhcpd.conf        ##查看配置文件并进行下一步编辑

编辑dhcp配置文件

  • [root@xjj dhcp]# vim dhcpd.conf

超详细讲解Linux DHCP服务

  • 关闭防火墙,重启网卡,再去“ping”进行验证网络
[root@xjj dhcp]# systemctl stop firewalld
se[root@jj dhcp]# setenforce 0
##记得重启一下网卡!
[root@xjj dhcp]# systemctl restart dhcpd


[root@xjj dhcp]# ping 192.168.100.1
...略
[root@xjj dhcp]# ping 192.168.10.1
...略
[root@xjj dhcp]# ping 192.168.20.1
...略

③验证

  • 到ensp中验证一下
  • 首先开启两台pc的dhcp来自动获取一下ip地址

超详细讲解Linux DHCP服务

超详细讲解Linux DHCP服务

④进入命令行“ipconfig”测试

  • pc1

超详细讲解Linux DHCP服务

  • pc2

超详细讲解Linux DHCP服务

pc1和pc2成功!!!

以上就是超详细讲解linux dhcp服务的详细内容,更多关于linux dhcp服务的资料请关注其它相关文章!

相关标签: Linux DHCP服务