- Czy klient dhcp w systemie Linux zapisuje jakieś dzienniki?
- Jeśli nie, czy można włączyć dzienniki i jak to zrobić?
- Jeśli zapisuje dzienniki, gdzie można je znaleźć?
- Jak wygląda typowy dziennik klienta dhcp podczas uzyskiwania adresów IP i serwerów nazw z serwera DHCP?
- Gdzie mogę znaleźć kod źródłowy klienta DHCP?
W przypadku istotnych różnic między Linuxami: Interesuje mnie Debian 8.1 (domyślna minimalna instalacja amd64).
Odpowiedzi:
Klient DHCP ISC jest zwykle wywoływany
dhclient
w większości dystrybucji Linuksa. Odman dhclient
:Istnieją dwa możliwe sposoby odczytu dziennika systemu. W większości systemów, które używają systemd, musisz używać
journalctl
, podczas gdycat /var/log/syslog
dotyczy to systemów, które nadal używają tradycyjnego systemu init.Dlatego jeśli Twój system korzysta z funkcji rejestrowania systemd, możesz użyć tej opcji,
journalctl | grep -Ei 'dhcp'
aby uzyskać dzienniki klienta DHCP. W przeciwnym razie wpiszcat /var/log/syslog | grep -Ei 'dhcp'
.Oto jak zwykle wygląda mój dziennik klienta DHCP:
źródło
Hacky (ale skuteczny) sposób debugowania dhclient na wielu platformach Linux to włączenie śledzenia bash w / sbin / dhclient-script .
dhclient uruchamia ten skrypt na większości wariantów systemu operacyjnego, które sprawdziłem (RedHat, Debian itp.).
Po prostu dodanie
-x
do shebang (pierwsza linia) w tym skrypcie powinno umożliwić śledzenie każdej linii do konsoli, np .:Następnie możesz na przykład uruchomić
Powinieneś zobaczyć wiele wyników, nie tylko ze skryptu dhclient, ale ze wszystkich
.d
skryptów zawartych w / etc / dhcp *.Dane wyjściowe śledzenia powinny pozwolić ci zorientować się, co się dzieje i jakie decyzje podejmuje kod (odwołaj się do samego skryptu, patrząc na dane wyjściowe).
Zwykle można wydedukować dane wejściowe (np. Parametry, w tym adres IP, BRAMA, itp.) Skrypt otrzymany z tego wyjścia, ale jeśli nie, możesz tymczasowo dodać coś takiego do skryptu tuż przed wyjściem:
Następnie sprawdź swój dziennik po uruchomieniu dhclient (/ var / log / messages lub / var / log / syslog)
źródło
Proszę znaleźć odpowiedź w linii.
Czy klient dhcp w systemie Linux zapisuje jakieś dzienniki?
Tak.
Jeśli nie, czy można włączyć dzienniki i jak to zrobić?
Jeśli zapisuje dzienniki, gdzie można je znaleźć?
/var/log/dhcpd.log
galaxy dhcpd: DHCPDISCOVER od 00: 0d: 62: d7: a0: 12 przez eth0
galaxy dhcpd: DHCPOFFER na 192.168.1.5 do 00: 0d: 62: d7: a0: 12 przez eth0
galaxy dhcpd: DHCPREQUEST dla 192.168.1.5 (192.168 .1.1) od 00: 0d: 62: d7: a0: 12 przez
galaktykę eth0 dhcpd: DHCPACK od 192.168.1.5 do 00: 0d: 62: d7: a0: 12 przez eth0
Gdzie mogę znaleźć kod źródłowy klienta DHCP?
Link 1
Link 2
źródło