Ответ 1
Одноадресный или широковещательный выбор указан в DHCP RFC 2131:
Если поле "giaddr" в сообщении DHCP от клиента отличное от нуля, сервер отправляет любые возвращаемые сообщения на порт "DHCP-сервер" на Ретранслятор BOOTP, адрес которого отображается в 'giaddr'. Если "giaddr" поле равно нулю, а поле 'ciaddr' отличное от нуля, тогда сервер одноадресные сообщения DHCPOFFER и DHCPACK на адрес в 'ciaddr'. Если "giaddr" равен нулю, а "ciaddr" равен нулю, а широковещательный бит set, то сервер передает сообщения DHCPOFFER и DHCPACK 0xffffffff. Если бит широковещательной передачи не установлен, а "giaddr" равен нулю и 'ciaddr' равно нулю, тогда сервер одноадресный DHCPOFFER и DHCPACK сообщения на адрес аппаратного обеспечения клиента и адрес "yiaddr". В все случаи, когда "giaddr" равен нулю, сервер передает любой DHCPNAK сообщений в 0xffffffff.
с ciaddr и giaddr:
ciaddr 4 Client IP address; only filled in if client is in BOUND, RENEW or REBINDING state and can respond to ARP requests. giaddr 4 Relay agent IP address, used in booting via a relay agent.
Таким образом, DHCP-сервер выбирает трансляцию или не соответствует текущему состоянию клиента (в основном, если он уже имеет IP-адрес или нет) и, соответственно, отправителю сообщения, если он ретранслятор или просто клиент.
В этом случае мой сервер DCHP выбрал одноадресную рассылку DHCPOFFER, потому что у моей машины уже был IP-адрес, и у меня нет агента ретрансляции в локальной сети.
EDIT:
И никто не может использовать IP-адрес 0.0.0.0 в качестве адреса назначения. Как указано в IPv4 RFC 5735:
0.0.0.0/8 - Адреса в этом блоке ссылаются на исходные хосты на "this" сеть. Адрес 0.0.0.0/32 может использоваться как адрес источника для этого хост в этой сети; другие адреса в пределах 0.0.0.0/8 могут использоваться для обратитесь к указанным хостам в этой сети ([RFC1122], раздел 3.2.1.3).