linux搭建DHCP服务

Dhcp服务

1.概述

动态主机配置协议,可以给主机分配IP地址

2.名称

  • 软件名
    • CentOS7.9 dhcp
    • redhat9.5 dhcp-server
  • 服务名
    • CentOS7.9 dhcpd
    • redhat9.5 dhcpd

3.配置文件

  • 服务端配置文件 /etc/dhcp/dhcpd.conf

    subnet 192.168.98.0 netmask 255.255.255.0 { #网络声明IP网段和子网掩码
      	range 192.168.98.150 192.168.98.160;  #划分地址池
       	option routers 192.168.98.2;  #配置路由
       	option domain-name-servers 8.8.8.8; #配置DNS
    }
    #基于主机的Mac地址分配ip,若有多个主机要分配可以写多个
    host hostname {   #主机名称
      hardware ethernet 08:00:07:26:c0:a5;  #主机的mac地址
      fixed-address 192.168.98.220;   #要分配的ip地址
    }
    

主机声明的优先级大于网络声明

  • 客户端租约文件 /var/lib/NetworkManager/*.lease

4.端口

UDP/67 用来接收客户端的请求

UDP/68 用来响应客户端的请求

5.控制命令

dhcpd -t #检查配置文件
dhcrelay ip地址  #指定DHCP服务器
journalctl -u dhcpd #查看dhcp的日志文件
systemctl start/stop/restart/reload/status  dhcpd #开启/停止/重启/重载/状态

6.工作流程

开始
客户端启动
客户端广播DHCP Discover消息
服务器接收到消息?
服务器选择可用IP并广播DHCP Offer消息
客户端接收Offer消息
客户端广播DHCP Request消息选择IP
服务器接收到Request消息?
服务器发送DHCP ACK消息确认分配
客户端接收ACK消息并配置IP
结束

7.实验

DHCP服务器要有IP地址才能给其他主机分配IP地址

(1)网络声明分配IP
  • 服务配置静态IP

    nmcli c modify ens33 ipv4.address 192.168.98.133/24 ipv4.method manual ipv4.gateway 192.168.98.2 ipv4.dns "8.8.8.8 114.114.114.114"
    
  • 下载dhcp服务

    yum install -y dhcp
    
  • 编写配置文件

    cp -p /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
    
    subnet 192.168.98.0 netmask 255.255.255.0 {  #网段
      range 192.168.98.150 192.168.98.160;  #地址池
       option routers 192.168.98.2;  #路由
       option domain-name-servers 8.8.8.8;  #DNS
    }
    
  • 客户端测试

    nmcli c modify ens33  ipv4.method auto
    ifdown ens33
    ifup ens33
    
    #查看dhcp服务器日志,判断是否成功分配ip
    journalctl -f -u dhcpd
    
(2)主机声明分配IP
  • 服务配置静态IP

    nmcli c modify ens33 ipv4.address 192.168.98.133/24 ipv4.method manual ipv4.gateway 192.168.98.2 ipv4.dns "8.8.8.8 114.114.114.114"
    
  • 下载dhcp服务

    yum install -y dhcp
    
  • 编写配置文件

    cp -p /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
    
    host hostname {    #主机名字
      hardware ethernet 08:00:07:26:c0:a5;  #mac地址
      fixed-address 192.168.98.98 ;  #IP地址
    }
     
    
  • 客户端测试

nmcli c modify ens33  ipv4.method atuo
ifdown ens33
ifup ens33

#查看dhcp服务器日志,判断是否成功分配ip
journalctl -f -u dhcpd
(3)跨网段分配IP
主机IP网关
A(dhcp服务器)192.168.98.98/24 VMent7192.168.98.254
B(双网卡中继)192.168.98.254/24 VMent7
192.168.198.254/24 VMent9
192.168.98.254
192.168.198.254
C(客户端测试)VMent9
  • 主机A下载DHCP服务

    yum install -y dhcp  #redhat是 dhcp-server
    
  • 编写配置文件

cp -p /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf

subnet 192.168.98.0 netmask 255.255.255.0 {  #网段
  range 192.168.98.150 192.168.98.160;  #地址池
   option routers 192.168.98.2;  #路由
   option domain-name-servers 8.8.8.8;  #DNS
}
  • 主机B下载DHCP服务
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf  && sysctl -p #开启路由转发
yum install -y dhcp  #CentOS的命令
yum install -y  --repo BaseOS,AppStream dhcp-relay.x86_64 #如果是redhat运行这个,Base和AppStream是本地仓库的id
yum repolist  #可以查看仓库id
dhcrelay 192.168.98.98 #指定DHCP服务器,安装DHCP或dhcp-relay.x86_64,只是为了运行dhcrelay命令来指定dhcp服务器
  • 客户端测试
nmcli c modify ens33  ipv4.method atuo
ifdown ens33
ifup ens33

#查看dhcp服务器日志,判断是否成功分配ip
journalctl -f -u dhcpd
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值