Passa al contenuto principale

3.2.2. Sample Code for Pseudo-Random Global ID Algorithm (Codice di esempio per algoritmo Global ID pseudo-casuale)

3.2.2. Sample Code for Pseudo-Random Global ID Algorithm (Codice di esempio per algoritmo Global ID pseudo-casuale)

L'algoritmo descritto di seguito è destinato ad essere utilizzato per Global ID assegnati localmente. In ogni caso il Global ID risultante sarà utilizzato nel prefisso appropriato come definito nella Sezione 3.2.

  1. Ottenere l'ora corrente del giorno in formato NTP a 64 bit [NTP].

  2. Ottenere un identificatore EUI-64 dal sistema che esegue questo algoritmo. Se un EUI-64 non esiste, uno può essere creato da un indirizzo MAC a 48 bit come specificato in [ADDARCH]. Se un EUI-64 non può essere ottenuto o creato, dovrebbe essere utilizzato un identificatore adeguatamente univoco, locale al nodo (ad esempio, numero di serie del sistema).

  3. Concatenare l'ora del giorno con l'identificatore specifico del sistema per creare una chiave.

  4. Calcolare un digest SHA-1 sulla chiave come specificato in [FIPS, SHA1]; il valore risultante è di 160 bit.

  5. Utilizzare i 40 bit meno significativi come Global ID.

  6. Concatenare FC00::/7, il bit L impostato a 1, e il Global ID a 40 bit per creare un prefisso di indirizzo IPv6 locale.

Questo algoritmo risulterà in un Global ID che è ragionevolmente univoco e può essere utilizzato per creare un prefisso di indirizzo IPv6 locale assegnato localmente.