DHCP istemcisinin ne yaptığını nasıl görebilirim?


14
  • Linux'taki dhcp istemcisi herhangi bir günlük yazıyor mu?
  • Değilse, günlükler etkinleştirilebilir ve nasıl?
  • Eğer günlük yazarsa, nerede bulunabilirler?
  • Bir DHCP sunucusundan IP ve ad sunucuları alırken tipik bir dhcp istemcisi günlüğü nasıl görünür?
  • DHCP istemcisinin kaynak kodunu nerede bulabilirim?

Linux'lar arasında ilgili farklılıklar olması durumunda: Debian 8.1 (varsayılan minimum kurulum amd64) ile ilgileniyorum.


1
"Linux'taki dhcp istemcisinden" daha spesifik olmanız gerekir. Linux için birçok farklı dhcp istemcisi vardır ve hepsi farklı yollar kaydeder. Debian 8.1 için varsayılan bir tane var, ancak ne olduğunu hatırlayamıyorum.
qasdfdsaq

Internet Systems Consortium DHCP İstemcisi 4.3.1 Telif Hakkı 2004-2014 Internet Systems Consortium. Tüm hakları Saklıdır. Bilgi için lütfen isc.org/software/dhcp
Gustave

Yanıtlar:


7

ISC'nin DHCP istemcisi genellikle dhclientçoğu Linux dağıtımında çağrılır . Gönderen man dhclient:

İstemci normalde başlatma sırası sırasında hiçbir çıktı yazdırmaz. -V komut satırı bağımsız değişkenini sağlayarak bir adres alana kadar başlangıç ​​sırası olaylarını görüntüleyen ayrıntılı mesajlar gönderilebilir. Her iki durumda da, istemci syslog (3) özelliğini kullanarak iletileri günlüğe kaydeder.

Sistem günlüğünüzü okumanın iki olası yolu vardır. Systemd kullanan birçok sistemlerde, kullanımına sahip journalctl, oysa cat /var/log/sysloghâlâ geleneksel bir init sistemi kullanan sistemler için geçerlidir.

Bu nedenle, sisteminiz systemd günlük kaydı özelliğini kullanıyorsa journalctl | grep -Ei 'dhcp', DHCP istemci günlüklerini almak için kullanabilirsiniz . Aksi takdirde girin cat /var/log/syslog | grep -Ei 'dhcp'.

DHCP istemci günlüğüm tipik olarak şöyle görünür:

Jul 20 14:17:39 trueclient1 NetworkManager[2622]: <info> (wlan1): canceled DHCP transaction, DHCP client pid 3325
Jul 20 14:17:42 trueclient1 NetworkManager[2622]: <info> Activation (wlan1) Beginning DHCPv4 transaction (timeout in 45 seconds)
Jul 20 14:17:42 trueclient1 dhclient: Internet Systems Consortium DHCP Client 4.2.2
Jul 20 14:17:42 trueclient1 dhclient: For info, please visit https://www.isc.org/software/dhcp/
Jul 20 14:17:42 trueclient1 NetworkManager[2622]: <info> (wlan1): DHCPv4 state changed nbi -> preinit
Jul 20 14:17:42 trueclient1 dhclient: DHCPREQUEST on wlan1 to 255.255.255.255 port 67
Jul 20 14:17:42 trueclient1 dhclient: DHCPACK from 10.8.8.1
Jul 20 14:17:42 trueclient1 NetworkManager[2622]: <info> (wlan1): DHCPv4 state changed preinit -> reboot

2
Debian 8.1 journalctl üzerinde, ubuntu-14.04.2-server üzerinde kayıtlar / var / log / syslog'dadır. Teşekkürler. Ancak: yalnızca çok az giriş vardır, örneğin yalnızca IP adresi günlüğe kaydedilir, DNS sunucuları kaydedilmez. Daha ayrıntılı çıktı yapılandırmak mümkün mü?
Gustave

3

Birçok Linux platformunda dhclient hata ayıklamasının hacky (ama etkili) bir yolu / sbin / dhclient-script içindeki bash izlemesini etkinleştirmektir .

dhclient bu komut dosyasını kontrol ettiğim çoğu işletim sistemi varyantında (RedHat, Debian, vb.) çalıştırır.

-xBu koddaki shebang'a (ilk satır) eklemek , her satırı konsolda izlemeyi etkinleştirmelidir, örneğin:

#!/bin/bash -x

Sonra koşabilirsiniz, örneğin

dhclient -r #release lease
dhclient #re-acquire lease

Ve sadece dhclient-script'den değil .d, / etc / dhcp * içindeki tüm scriptlerden çok sayıda çıktı görmelisiniz .

İzleme çıktısı, ne olduğunu ve kodun hangi kararları verdiğini anlamanıza izin vermelidir (çıktıya bakarken komut dosyasının kendisine bakın).

Bu çıktıdan alınan komut dosyasını genellikle girişleri (örn. IP, GATEWAY, vb. Gibi parametreler) çıkarabilirsiniz, ancak değilse, çıkıştan hemen önce komut dosyasına geçici olarak böyle bir şey ekleyebilirsiniz:

   env | logger -t dhclient-debugging

Sonra dhclient'i çalıştırdıktan sonra günlüğünüzü kontrol edin (/ var / log / messages veya / var / log / syslog)


-3

Lütfen cevabı yerinde bulun.

  • Linux'taki dhcp istemcisi herhangi bir günlük yazıyor mu?


    Evet öyle.

  • Değilse, günlükler etkinleştirilebilir ve nasıl?


 1. Edit dhcpd.conf and add this line
  log-facility local7;

 2. Edit syslog.conf and append 
  local7.* /var/log/dhcpd.log


  • Eğer günlük yazarsa, nerede bulunabilirler?

    /var/log/dhcpd.log


  • Bir DHCP sunucusundan IP ve ad sunucuları alırken tipik bir dhcp istemcisi günlüğü nasıl görünür?


galaxy dhcpd: DHCPDISCOVER, 00: 0d: 62: d7: a0: 12 ile eth0
galaxy dhcpd: DHCPOFFER üzerinde 192.168.1.5 - 00: 0d: 62: d7: a0: 12 üzerinden eth0
galaxy dhcpd: DHCPREQUEST için 192.168.1.5 (192.168 .1.1) 00: 0d: 62: d7: a0: 12 ile eth0
galaxy dhcpd: DHCPACK 192.168.1.5 ila 00: 0d: 62: d7: a0: 12 ile eth0 üzerinden


2
OP, DHCP istemcisi hakkında konuşuyor . DHCPD, DHCP sunucusu arka plan programıdır.
Larssend

Sistemimde dhcpd.conf adında bir dosya yok gibi görünüyor. Bir dosya var /etc/dhcp/dhclient.conf. Syslog.conf dosyası yok, /etc/rsyslog.conf dosyası var. Bu dosyalarda yapılandırma değişiklikleri yaptım, rsyslog'u yeniden başlattım, eth0'ı kapattım, tekrar açtım. Ancak hiçbir günlük dosyası görünmez. Konsolda bazı DHCP mesajları alıyorum. Makineyi yeniden başlattıktan sonra bile günlük mesajı almıyorum.
Gustave
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.