DHCPD가 잘못된 대여 시간을 제공하는 이유는 무엇입니까?

DHCPD가 잘못된 대여 시간을 제공하는 이유는 무엇입니까?

OpenBSD 5.8에서 DHCPD를 실행하고 있는데 이상한 문제가 발생했습니다.

/etc/dhcpd.conf에 임대 시간을 다음과 같이 설정했습니다.

max-lease-time 7200;
default-lease-time 7200;

2시간이어야 합니다.

dhcpd.leases 파일을 확인하면 다음이 표시됩니다.

lease 172.24.186.224 {
  starts 5 2018/07/31 07:17:03 UTC;
  ends 5 2018/07/31 19:17:03 UTC;
  hardware ethernet b4:f6:1c:27:4f:a4;
  uid 01:b4:f6:1c:27:4f:a4;
  client-hostname "Apple";
}

이 12시간 임대 시간은 tcpdump를 실행하고 Wireshark를 사용하여 분석할 때도 확인됩니다. (dhcpd.leases 파일에는 내가 설명할 수 없는 24시간 임대도 있습니다.)

"최상위" 구성이나 특정 서브넷에 대해 최대 임대 시간과 기본 임대 시간을 설정하려고 시도했지만 성공하지 못했습니다.

여기서 무슨 일이 일어나고 있는 걸까요?

답변1

방금 해결책을 찾았습니다.

이는 특정 OpenBSD 버전의 버그인 것 같습니다.

http://openbsd-archive.7691.n7.nabble.com/dhcpd-on-5-8-AMD64-default-lease-time-and-max-lease-time-ignored-td285149.html

답변2

새로운 임대 기간 기본값(네트워크 블록에 대한 로컬이든 글로벌이든)은 dhcpd구성 후(서비스가 다시 시작됨) 새로 발급된 임대에만 영향을 미칩니다.

이전 활성 임대는 구성 변경(경우에 따라)보다 우선하며 이전 기본값은 만료될 때까지 표시됩니다.

따라서 오늘 19:07 UTC 이후에만 귀하가 보여주신 MAC에 대한 임대가 방금 구성한 더 짧은 기간의 임대를 받게 됩니다.

시간이 만료되기 전에 다르게 작동하도록 하려면 임대를 삭제해야 합니다.

참고: 테스트 시스템인 경우 임대 파일을 0바이트로 자르거나 "lease {"와 "}" 사이의 줄을 편집할 수 있습니다.뒤쪽에dhcpd데몬을 중지합니다 .

관련 정보