Windows VM에 대한 DC 역할을 하는 VM이 있지만 systemd가 반복적으로 재생되는 일부 헛소리로 인해(부팅 프로세스가 설명할 수 없을 정도로 중단되고 CPU 로드가 지붕을 통과하여 DC를 종료하고 다시 시작해야 함) 아마도 여러 번 시도) System V init로 전환하기로 결정했지만 이제 Windows VM이 연결된 서브넷에 IP 주소를 할당하는 데 사용하는 ISC DHCP 서버에 문제가 있습니다.
부팅 순서는 DHCP 서버의 시작 스크립트에 도달할 때까지 정상적으로 진행되지만, 해당 시점에서 부팅 프로세스가 잠기고 계속 진행이 거부됩니다. 물론 이로 인해 부팅 시퀀스의 후반부 항목이 실행되지 않고 tty도 시작되지 않습니다(VM용으로 설정한 직렬 콘솔도 마찬가지). 다행히 SSH는 DHCP 서버가 시작되기 전에 시작되므로 여전히 VM에 SSH로 연결할 수 있습니다.
서버가 멈추면 다음과 같은 메시지가 나타납니다.
Launching IPv4 server only.
그런데 예상한 메시지 Starting ISC DHCPv4 server: dhcpd.
조차 나타나지 않습니다.
이제 a를 실행하면 ps -ef | grep dhcp
다음과 같은 결과가 출력됩니다.
root 1118 1 0 04:15 ? 00:00:00 dhclient -4 -v -i -pf /run/dhclient.enX0.pid -lf /var/lib/dhcp/dhclient.enX0.leases -I -df /var/lib/dhcp/dhclient6.enX0.leases enX0
root 1444 1272 0 04:15 ? 00:00:00 /bin/sh /etc/init.d/isc-dhcp-server start
root 1453 1444 0 04:15 ? 00:00:00 /usr/sbin/dhcpd -t -4 -q -cf /etc/dhcp/dhcpd.conf
ntp 1531 1 0 04:15 ? 00:00:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -c /run/ntp.conf.dhcp -u 109:117
root 1712 1588 0 04:34 pts/0 00:00:00 grep dhcp
다음으로 dhcpd로 열려있는 포트를 확인해봐도 아무 것도 발견할 수 없었기 때문에 UDP 포트를 열려고 하는 과정에서 프로세스에 문제가 있는 것으로 강하게 의심됩니다.
문제의 네트워크 인터페이스는 Domain-0에 정의되고 설정된 브리지에 연결된 Xen PV 인터페이스입니다.
DomU(도메인 컨트롤러)에서는 다음 섹션이 있습니다 /etc/network/interfaces
.
allow-hotplug enX1
iface enX1 inet static
address 192.168.128.1/24
연결된 백엔드가 연결되는 브리지는 다음과 같이 정의됩니다.
auto br1
iface br1 inet manual
bridge_ports none
bridge_stp on
bridge_hello 10
bridge_maxage 40
bridge_bridgeprio 0
bridge_fd 5
문제는 이 문제의 원인과 해결 방법입니다.
현재 유일한 옵션은 호출하는 init 스크립트를 가져오기 위해 정지된 DHCP 서버 프로세스를 종료하여 부팅 프로세스를 완료하는 것입니다. 그러나 이는 기껏해야 매우 차선책입니다. 특히 SSH 개입을 렌더링하기 때문입니다. unusable(입력할 수 없음)을 사용하므로 그 과정에서 이를 종료해야 합니다. 이렇게 하면 최소한 시작 프로세스가 중단되어 완료될 수 있습니다. DHCP 서버를 종료할 때 표시되는 또 다른 흥미로운 메시지
(주어진 예에서 )는 다음과 같습니다.kill -TERM 1453
dhcpd self-test failed. Please fix /etc/dhcp/dhcpd.conf.
The error was:
그러나 수동 시작을 사용하면 service isc-dhcp-server start
모든 것이 제대로 작동하고 추가 문제 없이 서버가 완벽하게 작동합니다.
답변1
dhcpd -t -4 -q -cf /etc/dhcp/dhcpd.conf
구성 테스트가 수행되고 있습니다 dhcpd.conf
. 예상한 "ISC DHCPv4 시작 중..." 메시지가 인쇄되기 전에 실행됩니다. 구성 테스트는 어떤 포트도 열어서는 안 되지만 중단되어서도 안 됩니다.
시작하기 전에 시작하기 이런, DHCP 서버가 호스트가 아닌 VM에 있다는 사실을 놓쳤습니다.dhcpd
를 원 하지만 시작되지 않기 때문에 중단됩니다. 로그인하면 브릿지가 시작되고 매뉴얼이 성공적으로 실행됩니다.br1
dhcpd
service isc-dhcp-server start
VM이 자체 호스트 이름을 성공적으로 확인할 수 있나요? 이는 단지 추측일 뿐이지만, 호스트 이름/IP 확인이 실패하면 놀라울 정도로 긴 중단이 발생할 수 있습니다.