Condividi tramite


Uso di indirizzi IPv4 codificati

La longevità di IPv4 ha comportato l'hardcoding di molti indirizzi IPv4 noti, come ad esempio indirizzi di loopback (127.x.x.x), costanti intere come INADDR_LOOPBACK, tra le altre. La pratica di codifica fissa di questi indirizzi presenta evidenti problemi durante la modifica di un'applicazione esistente per supportare IPv6 o la creazione di nuovi programmi indipendenti dalla versione IP.

Procedure consigliate

  • L'approccio migliore consiste nell'evitare l'hardcoding di qualsiasi indirizzo.

Codice da evitare

  • Evitare di usare indirizzi hardcoded nel codice.

Per modificare la base di codice esistente per l'interoperabilità tra IPv4 e IPv6

  1. Acquisire l'utilità Checkv4.exe . L'utilità Checkv4.exe viene installata come parte di Microsoft Windows Software Development Kit (SDK) rilasciata per Windows Vista e versioni successive.
  2. Esegui il comando Checkv4.exe sul proprio codice. Informazioni su come eseguire l'utilità Checkv4.exe sui file nella sezione Uso dell'utilità Checkv4.exe.
  3. L'utilità Checkv4.exe avvisa la presenza di definizioni comuni per gli indirizzi IPv4, ad esempio INADDR_LOOPBACK. Modificare qualsiasi codice che usa stringhe letterali con codice indipendente dalla versione del protocollo.
  4. Cercare nella codebase altre potenziali stringhe letterali, in base alle esigenze.

L'utilità Checkv4.exe consente di trovare stringhe letterali comuni, ma potrebbero esserci altre specifiche dell'applicazione. È consigliabile eseguire ricerche e test approfonditi per assicurarsi che la codebase abbia eliminato potenziali problemi associati alle stringhe letterali.

Guida IPv6 per le applicazioni Windows Sockets

Modifica delle strutture di dati per le app Winsock IPv6

Socket dual-stack per applicazioni basate su Winsock IPv6

Chiamate di funzione per le applicazioni Winsock IPv6

Problemi dell'interfaccia utente per le applicazioni Winsock IPv6

Protocolli sottostanti per le applicazioni Winsock IPv6