IPv4 protokol je smišljen 1981. kada je internet tek nastajao, tada su računari imali izuzetno malo RAM memorije (u kilobajtima) i smatrali su da na internetu nikad neće biti više od 4 milijarde računara, a i ako bude više, smisliće novi protokol.
1997. kada su uvideli da internet raste rapidno, smislili su novi IPv6 protokol, koji ima izuzetno ogroman broj IP adresa, prosto ne pojmljiv.
Problem je što ruteri napravljeni u doba dotCOM bubble-a od 1996. do 2000. nisu podržavali IPv6, a ostalo je tolko viška rutera posle 2000. da do recimo 2010. niko nije ni razvijao nove modele. U to vreme se desila ogromna ekspanzija broadband stalnog pristupa internetu gde: provajder su idalje delili jednu IPv4 adresu korisniku, a korisnik je često imao više računara povezanih na internet. To nije moguće*!
Umesto da se pređe na IPv6, zbog ogromne količine rutera iz druge polovine 90ih, ljudi su smislili NAT. Tu nastaju problemi koje ti imaš sad.
NAT je prvo služio da jednu javnu IPv4 adresu koristiš za povezivanje više računara / uređaja na internet preko provajdera koji su tad ograničavali na jednu IPv4 po korisniku.
Kada je internet postao toliko popularan da ni provajderi nemaju više IPv4 adresa za svakog korisnika, nastao je ogroman problem. Provajder nema IPv4 adrese za svakog korisnika.
U svakom slučaju provajderi moraju da koriste CGNAT danas. Jednostavno nema adresa.
Jedini način da provajderi koriste CGNAT a ne pokvare mogućnost direktnog povezivanja između korisnika (p2p) je: kombinacija CGNAT koji implementira endpoint independent mapping i hair pinning i podršku za IPv6. Supernova je u jednom trenutku sve to imala, ali su onda kada su spojili SN i mts po pitanju CGNAT-a, sve to upropastili.
Sada i mts i supernova koriste "symetric" NAT, odnosno najgori mogući NAT, koji potpuno onemogućava bilo kakvu direktnu komunikaciju između korisnika iza istog.