nat-pt
Network Address Translation – Protocol Translation (NAT-PT) je odmítnutý mechanismus pro překlad datagramů mezi IPv4 a IPv6. Jeho nástupcem se stal DNS64. Cílem NAT-PT bylo, aby se počítače z IPv6 sítě dostaly ke službám poskytovaným protokolem IPv4 a naopak. Obvykle se proto používal v koncových IPv6 sítích, aby místním počítačům umožnil přístup do IPv6 Internetu.
Jeho základem jsou překladová pravidla podle siit, k nimž doplňuje mechanismus pro mapování a překlad adres. Mívá k dispozici jeden IPv6 prefix (nejčastěji délky 96 bitů), do nějž mapuje IPv4 adresy prostě tak, že je připojí na konec. Směrovací tabulky v IPv6 síti musí zajistit, aby se datagramy směřující na některou z adres daného prefixu doručovaly stroji implementujícímu NAT-PT.
Pro opačné mapování používá jednu či několik svých IPv4 adres. Funguje podobně jako běžný Zápory - pokud některý z IPv6 strojů odesílá datagram do IPv4 sítě, vytvoří pro IPv6 adresu a port odesilatele záznam ve svých mapovacích tabulkách, datagram přeloží do IPv4 a nastaví v něm adresu a port podle tabulky. Když pak na tuto adresu a port přijde z IPv4 odpověď, přeloží ji do IPv6, opět s použitím mapovací tabulky pro určení cílové adresy a portu.
NAT-PT také upravuje DNS zprávy, a to v obou směrech. Dotaz od místního počítače na záznam typu AAAA pro určité jméno změní na dotaz typu A a pošle jej protokolem IPv4. V došlé odpovědi opět změní typ na AAAA a poskytnuté IPv4 adresy spojí s prefixem a udělá z nich tak IPv6 adresy, jejichž směrování vede k němu.
Hlavní nevýhodou běžného NATu je jednosměrnost - umožňuje navázat komunikaci jen z koncové sítě směrem ven. V opačném směru to možné není, protože stroje za NATem používají neveřejné adresy a z globálního Internetu je nelze identifikovat.
NAT-PT se snaží tuto nevýhodu odstranit a umožnit zahájení komunikace v obou směrech. Pro navázání dialogu zvenčí dovnitř je k tomu třeba opět upravovat DNS. Dorazí-li z IPv4 Internetu DNS dotaz na záznam typu A adresovaný některému ze zdejších DNS serverů, NAT-PT jej změní na záznam typu AAAA. když dorazí odpověď, zařadí IPv6 adresu v ní obsaženou do své mapovací tabulky a vytvoří pro ni mapování, jako kdyby dotyčný počítač již zahájil komunikaci směrem ven. Odpověď přeloží do IPv4, záznam v ní změní na typ A a vloží do něj svou adresu z právě vytvořeného záznamu v mapovací tabulce. Díky tomu bude umět doručit odpověď, až dorazí.
Tyto úpravy DNS prováděné NAT-PT bývají označovány jako DNS-ALG. Mimo jiné vyžadují, aby všechny DNS servery pro doménu odpovídající místní síti byly z IPv4 Internetu dostupné jen přes NAT-PT, aby mohl DNS zprávy měnit konzistentně se stavem svých mapovacích tabulek.
Do NAT-PT byly vkládány velké naděje, protože mohl vyřešit (byť s řadou omezení) problém vzájemné nekompatibility IPv6 a IPv4. Bohužel praktické nasazení ukázalo řadu problémů, z nichž většina pramenila z výše popsaných úprav DNS. Nakonec byl NAT-PT v RFC 4966 odmítnut a prohlášen za historický.
Tím se ovšem IPv6 ocitlo bez nástroje, který by mohl pro celou koncovou IPv6 síť transparentně zprostředkovat přístup do světa IPv4 (a naopak, ale první směr je potřebnější). Cesty navržené jako náhrada NAT-PT (např. bis_a_bia) vyžadují lokální instalaci na jednotlivých strojích. RFC 4966 zavrhující NAT-PT v závěru připouští, že se časem objeví podobný mechanismus, byť s určitými omezeními eliminujícími klíčové nedostatky. K tomu došlo v případě DNS64.