Como posso encontrar meu servidor DHCP?

12

Na minha LAN, existem vários servidores DHCP em execução e todos estão no mesmo intervalo.

Agora eu uso uma máquina que possui um endereço IP dinâmico de um servidor DHCP. Eu tenho que saber de qual servidor ele vem.

Como fazer isso?!

Maythux
fonte

Respostas:

11

Para descobrir o servidor DHCP que está fornecendo o IP, basta pressionar Ctrl+ Alt+ Tno teclado para abrir o Terminal. Quando abrir, execute o (s) comando (s) abaixo:

cat /var/lib/dhcp3/dhclient.leases

Ou você pode simplesmente usar o comando grep para obter o endereço do servidor DHCP.

grep dhcp-server-identifier /var/lib/dhcp3/dhclient.leases

OU

grep dhcp-server-identifier /var/lib/dhcp/dhclient.leases

Para o Ubuntu 14.04, 16.04 e 17.10, você pode usar:

dhclient -d -nw eth0

Saída de amostra:

Internet Systems Consortium DHCP Client 4.2.4
Copyright 2004-2012 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/00:0c:29:49:3e:67
Sending on   LPF/eth0/00:0c:29:49:3e:67
Sending on   Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0x4f723f9)
DHCPREQUEST of 192.168.138.136 on eth0 to 255.255.255.255 port 67 (xid=0x4f723f9)
DHCPOFFER of 192.168.138.136 from 192.168.138.254
DHCPACK of 192.168.138.136 from 192.168.138.254
RTNETLINK answers: File exists
bound to 192.168.138.136 -- renewal in 892 seconds.
Mitch
fonte
E 14.04 também!
Organic Marble
@ScottStensland Adicionadas informações para versões posteriores do Ubuntu. Obrigado
Mitch
@OrganicMarble Adicionadas informações para versões posteriores do Ubuntu. Obrigado
Mitch
A execução dhclient(ou seja dhclient -d -nw eth0) mexeu com um dhclientprocesso já em execução no meu caso, resultando em um novo endereço IP.
Ulrich Stern
12

No Ubuntu 14.04, o /var/lib/dhcp/dhclient.leasesestá vazio. O arquivo de concessão real pode ser encontrado na linha de comando do dhclientvia ps. Procure a -lfopção. Este comando deve funcionar nas instalações do Ubuntu 14.04 (ainda válidas a partir do 17.10) :

cat $(ps aux | grep -o '[/]var/lib/NetworkManager/\S*.lease') | grep dhcp-server-identifier
glibdud
fonte
Em 18.04 dhclient.leasesnão está vazio.
Pablo Bianchi
3

No Ubuntu 16.04 você pode tentar

journalctl | grep DHCPACK
miouze
fonte
Isso funciona com dhclient, funciona com systemd-networkd ?
Pablo Bianchi
2

Com:

  • nmap ( origem ; DHCPv6 ):

    sudo nmap --script broadcast-dhcp-discover -e eth0
    sudo nmap --script broadcast-dhcp6-discover -6  # DHCPv6
    
  • dhdump ( fonte ):

    sudo dhcpdump -i eth0
    
  • tcpdump ( fonte ):

    sudo tcpdump -i eth0 -nev udp port 68
    

Outras:

Pablo Bianchi
fonte
Estes são muito legais! Você poderia fornecer o comando nmap para o DHCP do IPv6?
Hikari