热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何为v6捕获ISCdhclient“租赁无法满足”错误?

设置了我的环境,以便在客户端运行的dhclient根据dhcp.client-id请求网络信息。如果

设置了我的环境,以便在客户端运行的dhclient根据dhcp.client-id请求网络信息。如果匹配,服务器将返回带有相应数据的租约。
我目前正在努力为同一配置添加使用两个不同的客户端ID的选项。

dhclient以设置的dhclient.conf开头,因此它使用第一个client-id,并尝试使用DHCPv6 Stateful从服务器获取数据。如果失败,则dhclients停止,并使用包含第二个client-id的dhclient.conf启动新的客户端。

尝试失败:(第一个客户ID)

Internet系统联盟DHCP客户端4.3.6-P1
版权所有2004-2018 Internet系统联盟。
保留所有权利。
有关信息,请访问https://www.isc.org/software/dhcp/
在Socket / XXXX上监听
在Socket / XXXX上发送
已创建duid“ DDDD”。
中国:请求租赁(INIT)。
XMT:Forming Solicit,经过了0毫秒。
XMT:X-- IA_NA NNNN
XMT: X-在+3600中请求续签
XMT: X-请求在+5400中重新绑定
XMT:在XXXX上征集,间隔1010ms。
RCV:通过SERV在XXXX上发布消息。
RCV:X-- IA_NA NNNN
RCV: X--开始1574417903
RCV: X-- t1-更新+0
RCV: X-- t2-重新绑定+0
RCV: X-- [选项]
RCV: !-无加法器的状态码,已删除IA_NA。
RCV:X--服务器ID:SERV_ID
PRC:租赁未能满足。

成功尝试(第二个客户端ID):

Internet系统联盟DHCP客户端4.3.6-P1
版权所有2004-2018 Internet系统联盟。
保留所有权利。
有关信息,请访问https://www.isc.org/software/dhcp/
在Socket / XXXX上监听
在Socket / XXXX上发送
已创建duid“ DDDD”。
中国:请求租赁(INIT)。
XMT:Forming Solicit,经过了0毫秒。
XMT:X-- IA_NA NNNN
XMT: X-在+3600中请求续签
XMT: X-请求在+5400中重新绑定
XMT:在XXXX上征集,间隔1050ms。
RCV:通过SERV在XXXX上发布消息。
RCV:X-- IA_NA NNNN
RCV: X--开始1574416667
RCV: X-- t1-更新+0
RCV: X-- t2-重新绑定+0
RCV: X-- [选项]
RCV: | X-- IAADDR ADDR
RCV: | | X-首选寿命9000。
RCV: | | X-最长寿命14400。
RCV:X--服务器ID:SERV_ID
RCV:已记录广告。
PRC:选择最佳广告租赁。
中国:考虑最佳租约。
PRC:X-初始候选CAND(s:SSSS,p:0)。
XMT:形成请求,已过去0毫秒。
XMT:X-- IA_NA NNNN
XMT: X-请求续订+3600
XMT: X-请求重新绑定+5400
XMT: | X-- IAADDR ADDR
XMT: | | X-首选寿命+7200
XMT: | | X-生命上限+7500
XMT:附加了V IA_NA。
XMT:XXXX上的请求,间隔1060ms。
RCV:来自SERV的XXXX回复消息。
RCV:X-- IA_NA NNNN
RCV: X--开始1574416668
RCV: X-- t1-更新+0
RCV: X-- t2-重新绑定+0
RCV: X-- [选项]
RCV: | X-- IAADDR ADDR
RCV: | | X-首选寿命7200。
RCV: | | X-最长寿命14400。
RCV:X--服务器ID:SERV_ID
中国:一定要租赁租赁
PRC:计划在7200秒内进行的续订事件,运行时间为3600秒。
PRC:预定在7200秒内投放。
PRC:计划在14400秒内到期。

我的问题是如何捕获租约失败的错误?这些消息在日志中可见(不确定在syslog中是否也是可见的),但是不建议使用该日志,因为会在其中写入更多源,并且这不是一个干净的解决方案(需要日志解析器)。

这个想法是要以某种方式捕获此特定错误,并使用dhclient脚本回显一个信号,该信号将启动在dhclient.conf中使用新的client-id启动新的dhclient的过程。我考虑过要查看客户端是否收到了Advertise消息,以及是否再次发送了Solicit消息(而不是Request),该客户端应该停止并以新的ID启动。您对此有何想法?

是否可以使用已定义的dhcp6选项来实现这一目标?

如果这归类为愚蠢的问题,我感到很抱歉,但考虑到dhcp和dhclient,我仍然是一个菜鸟。

谢谢。





推荐阅读
author-avatar
空荡荡跑龙套
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有