Можно ли проверить, что доставляет dhcp-сервер?
Когда я настраиваю свой dhcp-сервер, я говорю ему, из какого файла загружаться, например: pxelinux.0
, и где он должен его найти, например: 192.168.0.112
.
Могу ли я проверить, что это то, что доставляется с dhcp-сервера каким-то образом, без необходимости загружать машину по сети? Думаю, я ищу здесь трюк с командной строкой, например:
Я прочитал это https://serverfault.com/a/875791/243665 но он не говорит мне всего. Отображается имя загрузочного файла, но расположение pxeserver (192.168.0.112
) пропал, отсутствует. Пример:
$ sudo nmap --script broadcast-dhcp-discover
Starting Nmap 7.60 ( https://nmap.org ) at 2019-12-02 08:49 CET
Pre-scan script results:
| broadcast-dhcp-discover:
| Response 1 of 1:
| IP Offered: 192.168.0.36
| DHCP Message Type: DHCPOFFER
| Server Identifier: 192.168.0.1
| IP Address Lease Time: 5m00s
| Subnet Mask: 255.255.255.0
| Router: 192.168.0.1
| Domain Name Server: 192.168.100.10, 192.168.100.11
| Domain Name: ulfexample.com
| Renewal Time Value: 2m30s
| Rebinding Time Value: 4m22s
|_ Bootfile Name: /pxelinux.0
$ sudo nmap --script broadcast-dhcp-discover
использует сценарий broadcast-dhcp-discover
найдено здесь:
https://svn.nmap.org/nmap/scripts/broadcast-dhcp-discover.nse
вам следует заменить:
result_table["IP Offered"] = r.yiaddr_str
с участием:
result_table["IP Offered"] = r.yiaddr_str
result_table["IP TFTP Server"] = r.siaddr_str
В качестве альтернативы вы также можете использовать
$ sudo nmap --script dhcp-discover
сценарий:
https://svn.nmap.org/nmap-exp/patrik/nmap-brute/scripts/dhcp-discover.nse
вам следует заменить:
table.insert(response, string.format("IP Offered: %s", result.yiaddr_str))
с участием:
table.insert(response, string.format("IP Offered: %s", result.yiaddr_str))
table.insert(response, string.format("IP TFTP Server: %s", result.siaddr_str))
в обоих случаях вы сможете получить информацию PXE, если NBP хранится в file
поле предложения DHCP, а IP-адрес TFTP-сервера хранится в siaddr
поле предложения DHCP