实现DHCP服务

实现DHCP服务

主机获取网络配置可以通过两种方式:

  • 静态指定
  • 动态获取:
    • bootp:boot protocol MAC与IP一一静态对应
    • dhcp:增强的bootp,动态

DHCP工作原理

DHCP: Dynamic Host Configuration Protocol,动态主机配置协议,UDP协议,C/S模式,dhcp server:67/udp,dhcpv4c client :68/udp,dhcpv6 client:546/udp

主要用途:

用于内部网络和网络服务供应商自动分配IP地址给用户

用于内部网络管理员作为对所有电脑作集中管理的手段

自动化安装系统

解决IPV4资源不足问题

DHCP共有八种报文

在这里插入图片描述

  • DHCP DISCOVER:客户端到服务器
  • DHCP OFFER :服务器到客户端
  • DHCP REQUEST:客户端到服务器
  • DHCP ACK :服务器到客户端
  • DHCP NAK:服务器到客户端,通知用户无法分配合适的IP地址
  • DHCP DECLINE :客户端到服务器,指示地址已被使用
  • DHCP RELEASE:客户端到服务器,放弃网络地址和取消剩余的租约时间
  • DHCP INFORM:客户端到服务器, 客户端如果需要从DHCP服务器端获取更为详细的配置信息,则发送Inform报文向服务器进行请求,极少用到

DHCP服务续租

  • 50% :租赁时间达到50%时来续租,刚向DHCP服务器发向新的DHCPREQUEST请求。如果dhcp服务没有拒绝的理由,则回应DHCPACK信息。当DHCP客户端收到该应答信息后,就重新开始新的租用周期
  • 87.5%:如果之前DHCP Server没有回应续租请求,等到租约期的7/8时,主机会再发送一次广播请求

同网段多DHCP服务

  • DHCP服务必须基于本地
  • 先到先得的原则

跨网段

  • RFC 1542 Compliant Routers
  • dhcp relay agent: 中继代理

相关协议

  • arp
  • rarp

租期:

长租期:IP相对稳定,网络资源消耗较少,但是浪费IP资源

短租期:IP相对不稳定,网络资源消耗较多,但是IP资源可以充分利用,可以实现较少IP为较多的主机服务

DHCP实现

DHCP服务的实现软件:

  • dhcp(CentOS 7 之前版本) 或 dhcp-server(CentOS 8 中的包名)
  • dnsmasq:小型服务软件,可以提供dhcp和dns功能
DHCP相关文件组成

dhcp-server 包文件组成

/usr/sbin/dhcpd dhcp服务主程序

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

/usr/share/doc/dhcp-server/dhcpd.conf.example #dhcp服务配置范例文件

/usr/lib/systemd/system/dhcpd.service #dhcp服务service文件

/var/lib/dhcpd/dhcpd.leases 地址分配记录

dhcp-client客户端包

/usr/sbin/dhclient #客户端程序

/var/lib/dhclient #自动获取的IP信息

windows 工具

ipconfig /release #释放DHCP获取的IP,重新申请IP

ipconfig/renew #刷新租约,续约

DHCP服务器配置文件

帮助参考:man 5 dhcpd.conf

/etc/dhcp/dhcpd.conf 格式
全局配置
subnet {

}

host {

}

检查语法命令:service dhcpd configtest (CentOS 6 之前版本支持)

范例:dhcpd.conf

[root@centos8 ~]#grep -v "#" /etc/dhcp/dhcpd.conf
option domain-name "magedu.org";
option domain-name-servers 180.76.76.76, 223.6.6.6;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;

subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.10  10.0.0.100;
range 10.0.0.110 10.0.0.200;
option routers 10.0.0.2;
}

host testclient {
  hardware ethernet 00:0c:29:33:b4:1a;
  fixed-address 10.0.0.106;
  default-lease-time 86400;
  max-lease-time 864000;
  option routers 10.0.0.254;
  option domain-name-servers 114.114.114.114,8.8.8.8 ;
  option domain-name "magedu.net";

}

DHCP配置文件其它配置选项:

  • next-server:提供引导文件的服务器IP地址
  • filename: 指明引导文件名称

范例:

subnet 192.168.100.0 netmask 255.255.255.0 {
    range 192.168.100.10  192.168.100.100;
    range 192.168.100.150  192.168.100.200;
    option routers 192.168.100.1;
    next-server 192.168.1.100; #TFTP服务器地址
    filename "pxelinux.0";     #bootloader启动文件的名称
}

本文链接:http://www.yunweipai.com/36134.html

原创文章,作者:kepupublish,如若转载,请注明出处:https://blog.ytso.com/52590.html

(0)
上一篇 2021年8月6日
下一篇 2021年8月6日

相关推荐

发表回复

登录后才能评论