I sistemi non vedono l'immagine di Netrestore

0

Passando a qui dopo molti inutili tentativi di risoluzione.

Ho un server OSX (10.10.5) che ha ospitato un'immagine di Netrestore su HTTP senza problemi da un po 'di tempo. Abbiamo sostituito il nostro firewall nella nostra rete con uno di un altro fornitore, che ha la stessa identica configurazione di rete (senza VLAN, anche se è un punto controverso.) Leggi di seguito) eppure dal momento dello scambio, i Macbook della nostra organizzazione non possono vedere le immagini ospitate . Ecco cosa sto affrontando:

  • Sistemi sulla stessa VLAN dei server (normalmente no, ma non funziona in alcun modo.)
  • Firewall non abilitato sul server OSX
  • Tutte le porte richieste (sia UDP che TCP) sono raggiungibili sul server
  • Le immagini NON sono limitate al modello e le macchine esistenti con configurazioni di lavoro note contro le immagini non possono vederle
  • Il servizio di installazione di rete è stato riavviato, le immagini non sono cambiate, i servizi mostrano online
  • Provato a fornire immagini su HTTP e NFS
  • Il server è pingable da tutte le macchine
  • Il dump TCP per bootpd non mostra nulla che colpisce il server
  • Il server è passato dalla configurazione IP manuale a DHCP ma conserva lo stesso IP, Sub e Gateway

I sistemi che stanno cercando di raggiungere il server mostrano un comportamento come se il server non stia consegnando l'immagine. Non sono sicuro di dove andare per il prossimo passo a questo punto, o dove cercare dopo. Qualche idea?

    
posta smoooosher 21.01.2016 - 23:58
fonte

1 risposta

1

Sembra che qualcosa nella rete stia bloccando il traffico DHCP non standard, incluse le richieste che un client NetBoot utilizza per trovare i server. Quando si avvia un Mac con i tasti Opzione o N premuti, si esegue prima una normale transazione DHCP per ottenere un indirizzo IP, quindi si invia una richiesta speciale "BSDP" (Boot Service Discovery Protocol), che è in realtà un DHCP Inform richiesta con alcune opzioni speciali impostate. Ecco come appare con sudo tcpdump -nv -s0 port bootps :

16:19:35.656369 IP (tos 0x0, ttl 64, id 10411, offset 0, flags [DF], proto UDP (17), length 328)
    10.0.0.215.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 68:5b:35:xx:xx:xx, length 300, Flags [none]
      Client-IP 10.0.0.215
      Client-Ethernet-Address 68:5b:35:xx:xx:xx
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        Vendor-Option Option 43, length 7: 1.1.1.2.2.1.1
        DHCP-Message Option 53, length 1: Inform
        Parameter-Request Option 55, length 2: 
          Vendor-Option, Vendor-Class
        MSZ Option 57, length 2: 1500
        Vendor-Class Option 60, length 28: "AAPLBSDPC/i386/MacBookPro9,2"
        Client-ID Option 61, length 7: ether 68:5b:35:xx:xx:xx

Si noti che l'indirizzo di origine è un indirizzo unicast, non 0.0.0.0 come una normale richiesta DHCP avrebbe; il tuo firewall potrebbe pensare che sia orribile e bloccarlo. O potrebbe bloccarlo per qualche altra ragione. Ad ogni modo, se il server NetBoot lo riceve, dovrebbe rispondere con qualcosa del tipo:

16:19:35.656756 IP (tos 0x0, ttl 64, id 59742, offset 0, flags [none], proto UDP (17), length 369, bad cksum 0 (->7b45)!)
    10.0.0.2.67 > 10.0.0.215.68: BOOTP/DHCP, Reply, length 341, Flags [none]
      Client-IP 10.0.0.215
      Client-Ethernet-Address 68:5b:35:xx:xx:xx
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: ACK
        Server-ID Option 54, length 4: 10.0.0.2
        Vendor-Class Option 60, length 9: "AAPLBSDPC"
        Vendor-Option Option 43, length 78: 1.1.1.4.2.127.255. [trimmed...]
16:19:35.657252 IP (tos 0x0, ttl 64, id 33486, offset 0, flags [none], proto UDP (17), length 328, bad cksum 0 (->e1fe)!)
    10.0.0.2.67 > 10.0.0.215.68: BOOTP/DHCP, Reply, length 300, Flags [none]
      Client-IP 10.0.0.215
      Server-IP 10.0.0.2
      Client-Ethernet-Address 68:5b:35:xx:xx:xx
      sname "mainserver.pretendco.com"
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: ACK
        Server-ID Option 54, length 4: 10.0.0.2

... e se il client lo riceve, usa le informazioni al suo interno per recuperare booster e kernel su TFTP, quindi montare l'immagine su HTTP o NFS e avviare effettivamente da esso.

BTW, questo tende a essere difficile da risolvere perché devi avviare il client su & oltre per farlo inviare le richieste. Ma c'è un trucco: avviare un client normalmente, quindi aprire Preferenze di Sistema - > Disco di avvio ed eseguirà la scansione delle immagini NetBoot utilizzando le stesse query BSDP / DHCP. Molto più facile, in più puoi eseguire catture di pacchetti sul client mentre lo fai. L'unica cosa complicata è che per farlo rieseguire, devi chiudere completamente le Preferenze di Sistema, non solo lasciare & reinserire il riquadro Disco di avvio.

    
risposta data 22.01.2016 - 01:05
fonte

Leggi altre domande sui tag