Назад | Перейти на главную страницу

Как заставить Mac запрашивать новый IP-адрес у другого DHCP-сервера, работающего параллельно во время NetBooting?

У меня интересная ситуация.

Я пытаюсь использовать машину на базе Linux, чтобы разрешить Mac для загрузки по сети (аналогично загрузке PXE), запустив службу DHCP параллельно с «глобальным» сервером DHCP.

Локальный DHCP-сервер раздает IP-адреса в частной подсети, например, 10.168.0.10-10.168.254-254, в то время как «глобальный» DHCP-сервер раздает IP-адреса из диапазона IP-адресов 10.0.0.1 - 10.0.1.254.

Предполагается, что локальный диапазон DHCP используется только в среде выполнения перед загрузкой и сетевой загрузке. Я контролирую локальный DHCP-сервер, но у меня нет доступа к глобальному DHCP-серверу.

У меня есть фильтр, позволяющий разрешать только членам со строками поставщика «AAPLBSDPC / i386» и «PXEClient».

PXE работает нормально, но у Netboot есть особенность.

Системы Apple, которые еще не подключены к сети, могут нормально загружаться по сети. Но как только он получит «настоящий» IP-адрес от глобального DHCP-сервера, он «сохранит» его и запросит его в следующий раз, когда мы захотим, чтобы он загрузился по сети (что локальный DHCP-сервер не даст ему).

Вот чего я хочу:

Mar 30 10:52:28 dev01 dhcpd: DHCPDISCOVER from 34:15:xx:xx:xx:xx via eth1
Mar 30 10:52:29 dev01 dhcpd: DHCPOFFER on 10.168.222.46 to 34:15:xx:xx:xx:xx via eth1
Mar 30 10:52:31 dev01 dhcpd: DHCPREQUEST for 10.168.222.46 (10.168.0.1) from 34:15:xx:xx:xx:xx via eth1
Mar 30 10:52:31 dev01 dhcpd: DHCPACK on 10.168.222.46 to 34:15:xx:xx:xx:xx via eth1
Mar 30 10:52:32 dev01 in.tftpd[5890]: tftp: client does not accept options
Mar 30 10:52:53 dev01 in.tftpd[5891]: tftp: client does not accept options
Mar 30 10:52:53 dev01 in.tftpd[5893]: tftp: client does not accept options
Mar 30 10:52:54 dev01 in.tftpd[5895]: tftp: client does not accept options

Вот что я получаю, когда у него уже есть "сохраненный" IP:

Mar 30 10:51:29 dev01 dhcpd: DHCPDISCOVER from 00:25:xx:xx:xx:xx via eth1
Mar 30 10:51:30 dev01 dhcpd: DHCPOFFER on 10.168.222.45 to 00:25:xx:xx:xx:xx via eth1
Mar 30 10:51:31 dev01 dhcpd: DHCPREQUEST for 10.0.0.61 (10.0.0.1) from 00:25:xx:xx:xx:xx via eth1: ignored (not authoritative).

Есть ли у вас какие-либо предложения? Это будет высоко ценится.

РЕДАКТИРОВАТЬ: Я думаю, что DHCP-сервер должен NACK'ing запрос, если он находится в классе Apple ... Могу ли я просто вставить «авторитетный» оператор внутри класса, который отфильтровывает системы Apple Netbooting?

[Удален tcpdump с локального DHCP-сервера]

Я попытался заблокировать коляску с помощью комбинации клавиш, но это не сработало. Он по-прежнему сообщает о том же в журналах DHCP. Я пока изучаю дополнительные случайные параметры в конфигурации DHCP.

редактировать:

Что кажется интересным, если я войду в операционную систему, выключу en0, затем перезапущу и попробую NetBooting (таким образом, освобождая IP?). Netboot правильно получит IP-адрес от локального сервера и Netboot.

У вас есть идеи, почему это работает?

(Я хотел поблагодарить вас за все ваши усилия, вы действительно мне помогли.)

Вот трассировка порта через зеркальный порт клиента Netboot.

Легенда (на всякий случай):

IP-адрес

MAC

Отследить, когда не работает:

tcpdump: listening on en0, link-type EN10MB (Ethernet), capture size 65535 bytes
15:01:10.765615 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 590: (tos 0x0, ttl 16, id 163, offset 0, flags [none], proto UDP (17), length 576)
    0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from 34:15:xx:xx:xx:xx, length 548, xid 0x2b93, secs 5, Flags [none] (0x0000)
      Client-Ethernet-Address 34:15:xx:xx:xx:xx
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: Discover
        Parameter-Request Option 55, length 5: 
          Subnet-Mask, Default-Gateway, BF, Vendor-Option
          Vendor-Class
        Client-ID Option 61, length 7: ether 34:15:xx:xx:xx:xx
        Vendor-Class Option 60, length 28: "AAPLBSDPC/i386/MacBookPro5,3"
        Vendor-Option Option 43, length 4: 2.2.1.1
        END Option 255, length 0
        PAD Option 0, length 0, occurs 252
15:01:10.784087 00:24:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 346: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 255, id 17248, offset 0, flags [none], proto UDP (17), length 328)
    10.0.129.254.67 > 10.0.128.63.68: [udp sum ok] BOOTP/DHCP, Reply, length 300, xid 0x2b93, Flags [none] (0x0000)
      Your-IP 10.0.128.63
      Server-IP 10.0.178.10
      Gateway-IP 10.0.129.254
      Client-Ethernet-Address 34:15:xx:xx:xx:xx
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: Offer
        Subnet-Mask Option 1, length 4: 255.255.254.0
        RN Option 58, length 4: 1296000
        RB Option 59, length 4: 2268000
        Lease-Time Option 51, length 4: 2592000
        Server-ID Option 54, length 4: 10.0.178.10
        Default-Gateway Option 3, length 4: 10.0.129.254
        END Option 255, length 0
        PAD Option 0, length 0, occurs 20
15:01:11.527910 00:1e:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 416: vlan 1, p 0, ethertype IPv4, (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 398)
    10.168.0.1.67 > 10.168.0.11.68: [udp sum ok] BOOTP/DHCP, Reply, length 370, xid 0x2b93, secs 5, Flags [none] (0x0000)
      Your-IP 10.168.0.11
      Server-IP 10.168.0.1
      Client-Ethernet-Address 34:15:xx:xx:xx:xx
      sname "10.168.0.1"
      file "macnbi-i386/booter"
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: Offer
        Server-ID Option 54, length 4: 10.168.0.1
        Lease-Time Option 51, length 4: 86400
        Subnet-Mask Option 1, length 4: 255.255.0.0
        Default-Gateway Option 3, length 4: 10.168.0.1
        RP Option 17, length 76: "http://10.0.128.1/Netboot/NetBootSP0/NetRestore.nbi/NetInstall-Restore.dmg"
        Vendor-Option Option 43, length 6: 8.4.129.0.0.103
        Vendor-Class Option 60, length 14: "AAPLBSDPC/i386"
        END Option 255, length 0
15:01:12.865888 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 590: (tos 0x0, ttl 16, id 39430, offset 0, flags [none], proto UDP (17), length 576)
    0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from 34:15:xx:xx:xx:xx, length 548, xid 0x2b93, secs 5, Flags [none] (0x0000)
      Client-Ethernet-Address 34:15:xx:xx:xx:xx
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: Request
        Parameter-Request Option 55, length 5: 
          Subnet-Mask, Default-Gateway, BF, Vendor-Option
          Vendor-Class
        Client-ID Option 61, length 7: ether 34:15:xx:xx:xx:xx
        Vendor-Class Option 60, length 28: "AAPLBSDPC/i386/MacBookPro5,3"
        Requested-IP Option 50, length 4: 10.0.128.63
        Server-ID Option 54, length 4: 10.0.178.10
        Vendor-Option Option 43, length 4: 2.2.1.1
        END Option 255, length 0
        PAD Option 0, length 0, occurs 240
15:01:12.868182 00:24:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 346: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 255, id 17251, offset 0, flags [none], proto UDP (17), length 328)
    10.0.129.254.67 > 10.0.128.63.68: [udp sum ok] BOOTP/DHCP, Reply, length 300, xid 0x2b93, Flags [none] (0x0000)
      Your-IP 10.0.128.63
      Gateway-IP 10.0.129.254
      Client-Ethernet-Address 34:15:xx:xx:xx:xx
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: ACK
        RN Option 58, length 4: 1296000
        RB Option 59, length 4: 2268000
        Lease-Time Option 51, length 4: 2592000
        Server-ID Option 54, length 4: 10.0.178.10
        Subnet-Mask Option 1, length 4: 255.255.254.0
        Default-Gateway Option 3, length 4: 10.0.129.254
        END Option 255, length 0
        PAD Option 0, length 0, occurs 20
15:01:12.868185 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.128.63 tell 0.0.0.0, length 46
15:01:13.367995 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.128.63 tell 10.0.128.63, length 46
15:01:13.868312 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.129.254 tell 10.0.128.63, length 46
15:01:13.868854 00:24:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 64: vlan 1, p 0, ethertype ARP, Ethernet (len 6), IPv4 (len 4), Reply 10.0.129.254 is-at 00:24:xx:xx:xx:xx, length 46
15:01:13.868857 34:15:xx:xx:xx:xx > 00:24:xx:xx:xx:xx, ethertype IPv4 (0x0800), length 89: (tos 0x0, ttl 16, id 39236, offset 0, flags [none], proto UDP (17), length 75)
    10.0.128.63.15789 > 10.168.0.1.69: [udp sum ok]  47 RRQ "macnbi-i386/booter" octet blksize 512 tsize 0
15:01:18.968010 34:15:xx:xx:xx:xx > 00:24:xx:xx:xx:xx, ethertype IPv4 (0x0800), length 89: (tos 0x0, ttl 16, id 41750, offset 0, flags [none], proto UDP (17), length 75)
    10.0.128.63.15790 > 10.168.0.1.69: [udp sum ok]  47 RRQ "macnbi-i386/booter" octet blksize 512 tsize 0 
15:01:24.067221 34:15:xx:xx:xx:xx > 00:24:xx:xx:xx:xx, ethertype IPv4 (0x0800), length 89: (tos 0x0, ttl 16, id 30380, offset 0, flags [none], proto UDP (17), length 75)
    10.0.128.63.15791 > 10.168.0.1.69: [udp sum ok]  47 RRQ "macnbi-i386/booter" octet blksize 512 tsize 0

Похоже, ты прав; Он получает несколько ответов, но я не уверен, что это причина, по которой он не выбирает один вместо другого.

Вот tcpdump успешной попытки загрузки по сети:

tcpdump: listening on en0, link-type EN10MB (Ethernet), capture size 65535 bytes
15:31:26.287342 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 590: (tos 0x0, ttl 16, id 44354, offset 0, flags [none], proto UDP (17), length 576)
    0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from 34:15:xx:xx:xx:xx, length 548, xid 0x32cc, secs 5, Flags [none] (0x0000)
     Client-Ethernet-Address 34:15:xx:xx:xx:xx
     Vendor-rfc1048 Extensions
       Magic Cookie 0x63825363
       DHCP-Message Option 53, length 1: Discover
       Parameter-Request Option 55, length 5: 
         Subnet-Mask, Default-Gateway, BF, Vendor-Option
         Vendor-Class
       Client-ID Option 61, length 7: ether 34:15:xx:xx:xx:xx
       Vendor-Class Option 60, length 28: "AAPLBSDPC/i386/MacBookPro5,3"
       Vendor-Option Option 43, length 4: 2.2.1.1
       END Option 255, length 0
       PAD Option 0, length 0, occurs 252
15:31:26.289057 00:24:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 64: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 127, id 1530, offset 0, flags [none], proto ICMP (1), length 39)
    10.0.178.10 > 10.0.128.63: ICMP echo request, id 512, seq 22420, length 19
15:31:26.624305 00:1e:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 416: vlan 1, p 0, ethertype IPv4, (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 398)
    10.168.0.1.67 > 10.168.0.11.68: [udp sum ok] BOOTP/DHCP, Reply, length 370, xid 0x32cc, secs 5, Flags [none] (0x0000)
     Your-IP 10.168.0.11
     Server-IP 10.168.0.1
     Client-Ethernet-Address 34:15:xx:xx:xx:xx
     sname "10.168.0.1"
     file "macnbi-i386/booter"
     Vendor-rfc1048 Extensions
       Magic Cookie 0x63825363
       DHCP-Message Option 53, length 1: Offer
       Server-ID Option 54, length 4: 10.168.0.1
       Lease-Time Option 51, length 4: 86400
       Subnet-Mask Option 1, length 4: 255.255.0.0
       Default-Gateway Option 3, length 4: 10.168.0.1
       RP Option 17, length 76: "http://10.0.128.1/Netboot/NetBootSP0/NetRestore.nbi/NetInstall-Restore.dmg"
       Vendor-Option Option 43, length 6: 8.4.129.0.0.103
       Vendor-Class Option 60, length 14: "AAPLBSDPC/i386"
       END Option 255, length 0
15:31:27.301638 00:24:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 64: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 127, id 1532, offset 0, flags [none], proto ICMP (1), length 39)
    10.0.178.10 > 10.0.128.63: ICMP echo request, id 512, seq 22676, length 19
15:31:28.387589 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 590: (tos 0x0, ttl 16, id 29575, offset 0, flags [none], proto UDP (17), length 576)
    0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from 34:15:xx:xx:xx:xx, length 548, xid 0x32cc, secs 5, Flags [none] (0x0000)
     Client-Ethernet-Address 34:15:xx:xx:xx:xx
     Vendor-rfc1048 Extensions
       Magic Cookie 0x63825363
       DHCP-Message Option 53, length 1: Request
       Parameter-Request Option 55, length 5: 
         Subnet-Mask, Default-Gateway, BF, Vendor-Option
         Vendor-Class
       Client-ID Option 61, length 7: ether 34:15:xx:xx:xx:xx
       Vendor-Class Option 60, length 28: "AAPLBSDPC/i386/MacBookPro5,3"
       Requested-IP Option 50, length 4: 10.168.0.11
       Server-ID Option 54, length 4: 10.168.0.1
       Vendor-Option Option 43, length 4: 2.2.1.1
       END Option 255, length 0
       PAD Option 0, length 0, occurs 240
15:31:28.802414 00:24:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 346: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 255, id 19737, offset 0, flags [none], proto UDP (17), length 328)
    10.0.129.254.67 > 10.0.128.63.68: [udp sum ok] BOOTP/DHCP, Reply, length 300, xid 0x32cc, Flags [none] (0x0000)
     Your-IP 10.0.128.63
     Server-IP 10.0.178.10
     Gateway-IP 10.0.129.254
     Client-Ethernet-Address 34:15:xx:xx:xx:xx
     Vendor-rfc1048 Extensions
       Magic Cookie 0x63825363
       DHCP-Message Option 53, length 1: Offer
       Subnet-Mask Option 1, length 4: 255.255.254.0
       RN Option 58, length 4: 1296000
       RB Option 59, length 4: 2268000
       Lease-Time Option 51, length 4: 2592000
       Server-ID Option 54, length 4: 10.0.178.10
       Default-Gateway Option 3, length 4: 10.0.129.254
       END Option 255, length 0
       PAD Option 0, length 0, occurs 20
15:31:28.899055 00:1e:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 392: vlan 1, p 0, ethertype IPv4, (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 374)
    10.168.0.1.67 > 10.168.0.11.68: [udp sum ok] BOOTP/DHCP, Reply, length 346, xid 0x32cc, secs 5, Flags [none] (0x0000)
     Your-IP 10.168.0.11
     Server-IP 10.168.0.1
     Client-Ethernet-Address 34:15:xx:xx:xx:xx
     sname "10.168.0.1"
     file "macnbi-i386/booter"
     Vendor-rfc1048 Extensions
       Magic Cookie 0x63825363
       DHCP-Message Option 53, length 1: ACK
       Server-ID Option 54, length 4: 10.168.0.1
       Lease-Time Option 51, length 4: 86400
       Subnet-Mask Option 1, length 4: 255.255.0.0
       Default-Gateway Option 3, length 4: 10.168.0.1
       RP Option 17, length 76: "http://10.0.128.1/Netboot/NetBootSP0/NetRestore.nbi/NetInstall-Restore.dmg"
       END Option 255, length 0
15:31:28.899058 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 10.168.0.11 tell 0.0.0.0, length 46
15:31:29.398941 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 10.168.0.11 tell 10.168.0.11, length 46
15:31:29.899254 34:15:xx:xx:xx:xx > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 10.168.0.1 tell 10.168.0.11, length 46
15:31:29.899257 00:1e:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 64: vlan 1, p 0, ethertype ARP, Ethernet (len 6), IPv4 (len 4), Reply 10.168.0.1 is-at 00:1e:xx:xx:xx:xx, length 46
15:31:29.899259 34:15:xx:xx:xx:xx > 00:1e:xx:xx:xx:xx, ethertype IPv4 (0x0800), length 89: (tos 0x0, ttl 16, id 38655, offset 0, flags [none], proto UDP (17), length 75)
    10.168.0.11.17638 > 10.168.0.1.69: [udp sum ok]  47 RRQ "macnbi-i386/booter" octet blksize 512 tsize 0 
15:31:29.899924 00:1e:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 73: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 25574, offset 0, flags [DF], proto UDP (17), length 55)
    10.168.0.1.43349 > 10.168.0.11.17638: [udp sum ok] UDP, length 27
15:31:29.900216 34:15:xx:xx:xx:xx > 00:1e:xx:xx:xx:xx, ethertype IPv4 (0x0800), length 60: (tos 0x0, ttl 16, id 59278, offset 0, flags [none], proto UDP (17), length 33)
    10.168.0.11.17638 > 10.168.0.1.43349: [udp sum ok] UDP, length 5
15:31:34.900598 00:1e:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 64: vlan 1, p 0, ethertype ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.168.0.11 tell 10.168.0.1, length 46
15:31:35.900833 00:1e:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 64: vlan 1, p 0, ethertype ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.168.0.11 tell 10.168.0.1, length 46
15:31:36.901071 00:1e:xx:xx:xx:xx > 34:15:xx:xx:xx:xx, ethertype 802.1Q (0x8100), length 64: vlan 1, p 0, ethertype ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.168.0.11 tell 10.168.0.1, length 46

Что вы думаете, увидев этот журнал?

Изменить / обновить:

Я только что добавил больше опций, так что мой счетчик опций локального DHCP равен 11, а счетчик опций глобального DHCP равен 9. И он все равно не получит IP-адрес с моего локального DHCP-сервера. Не уверен, что я могу сделать, мне не нужно освобождать IP каждый раз, когда мне нужно NetBoot.

Похоже, что он примет первое предложение DHCP, есть ли способ убедиться, что локальный сервер DHCP отвечает первым?

У вас есть идеи, которыми вы могли бы поделиться с нами?

Можете ли вы поместить эти MAC-адреса в их собственную сеть с маршрутизатором для маршрутизации адресов 10.168 в глобальную сеть? Затем маршрутизатор ограничит передачу DHCP-запросов.

Вариант 2. Поместите MAC-адреса в их собственную VLAN с DHCP-сервером.

Используйте DHCP-сервер, который не отвечает на определенные настроенные MAC-адреса. Если есть такая штука. Если его еще нет, вы, вероятно, можете пропатчить сервер Linux dhcp для поддержки этой функции. Обычному программисту это было бы несложно добавить.

Они выглядят как журналы с вашего локального DHCP-сервера, верно? Если это так, то было бы интересно увидеть фактическую трассировку пакета *, чтобы увидеть, что на самом деле происходит. Может случиться так, что клиент вообще не «хранит» аренду; он мог получить предложение от глобального DHCP-сервера и выбрать его.

Я знаю, что DHCP-клиент Mac OS X, когда он представлен с несколькими DHCP-предложениями с нескольких серверов, имеет тенденцию выбирать тот, в котором определены дополнительные параметры DHCP. (Это, как правило, хорошая эвристика для выбора «настоящего» DHCP-сервера сайта вместо того, чтобы быть обманутым случайным мошенническим DHCP-сервером в той же сети - когда кто-то случайно включает службу DHCP на компьютере, они обычно не торопятся чтобы настроить его, чтобы включить кучу параметров DHCP.) ОДНАКО, я не знаю, что делает DHCP-клиент в загрузочном модуле Mac EFI при представлении нескольких предложений. Я сомневаюсь, что клиент DHCP EFI (клиент DHCP в ПЗУ) похож на клиент DHCP Mac OS X (клиент DHCP на диске).

Если выяснится, что клиент DHCP EFI выбирает на основе количества параметров DHCP, вы могли бы обойти проблему, добавив к своему DHCP-серверу кучу параметров, например, сообщив клиентам, какой WINS-сервер, NTP-сервер и LDAP-сервер и что еще использовать. Возможно, вы могли бы просмотреть список зарегистрированных опций DHCP и сконфигурируйте свой DHCP-сервер так, чтобы он не пострадал.

Если действительно окажется, что клиент хранит аренду DHCP в NVRAM, вы сможете очистить NVRAM, удерживая Cmd-Opt-P-R при загрузке, пока не услышите второй сигнал загрузки. (Это старая комбинация клавиш "Zap the PRAM", которая иногда была необходима на компьютерах Mac 80-х и 90-х годов, но в настоящее время почти никогда не используется, но по-прежнему слишком часто рекомендуется. В этом случае, однако, у вас есть разумные основания полагать, что что-то, что хранится в NVRAM, вызывает у вас проблемы, поэтому это может быть один из тех редких случаев, когда это разумно.)

* Для трассировки пакетов я бы рекомендовал сделать что-то подобное на независимом компьютере, подключенном к порту коммутатора, который настроен на зеркалирование порта порта коммутатора клиента сетевой загрузки:

sudo tcpdump -i en0 -nevvvs0 '(udp port bootpc) or icmp or arp'

Или, может быть:

sudo tcpdump -i en0 -nevvvs0 ether host $MACOfEn0

(где '$ MACOfEn0' - это MAC-адрес en0 клиента сетевой загрузки или любого другого интерфейса, через который вы выполняете эту попытку сетевой загрузки)