1. Je možné, aby se měnila "moje" IP adresa (tedy vnější, myšlena ta, kterou uvidí protistrana), pokud se připojím (já vytvorim odchozi spojení) ke 2 ruzným serverům (například z důvodu, že jeden server je číně a druhý v Africe)? Klidně i ve stejném čase? Jsem samozřejmě připojen 1 rozhraním k ISP. Je to obvyklé, efektivní?
Ano, je to možné. NAT si musí udržovat tabulku spojení, a pakety patřící do jednoho spojení NATovat pořád stejně. Ale dvě různá spojení může klidně mapovat na různé adresy. Obvyklé – jak kde, efektivní – vystačí si s menším počtem veřejných IP adres, protože tam funguje agregace. Když bude NATovat třeba 16 uživatelů na jednu IP adresu, může se mu tam sejít víc uživatelů, kteří budou vytvářet větší množství spojení, a NATu mohou dojít volné porty. Když bude mapovat 256 uživatelů na 16 veřejných adres, je to v průměru pořád 16 uživatelů na jednu adresu, ale v tom větším množství uživatelů se spíš najdou takoví, kterým stačí malý počet spojení nebo zrovna nejsou aktivní vůbec. Na druhou stranu to ale znamená, že musí všechny ty uživatele NATovat na jednom zařízení. Teoreticky se to dá poskládat i jinak, na jedněch zařízení rozdělovat provoz na různé NATy, ale byla by to spíš komplikace. Je ale těžké napsat „nedělá se to“, protože se pak vždycky objeví někdo s tím, že on to tak má :-)
2. Jak funguje NAT operátora: Má třeba pool adres (42.36.4.0/255.255.255.0), ve které má 100 000 klientů? Nebo může mít i "nesouvislé IP" (které by právě třeba byly podle otázky 1 na různých koutech)?
Může to tak být. Ale nedá se říct obecné pravidlo, že to všichni mají nějakým způsobem – záleží na topologii sítě, na tom,jak historicky vznikla a spoustě dalších faktorů.
Nevím, co myslíte tím „nesouvislé IP“.
3. Jaká je struktura sítě operátora? může probíhat překlad na více prvcích? co jsou to edge routery? a jsou konečné výstupní uzly shodné s NAT zařízeními? Je tam třeba asymetrický vztah, že třeba adresa bude přeložena, ale pak ještě teprv bude routovaná na ještě odlišný výstupní bod?
Překlad může probíhat na více prvcích. Pokud se provádí NAT 1:N, není to výpočetně úplně jednoduchá záležitost (ve srovnání třeba s routováním), takže jeden prvek toho neutáhne mnoho. Také tím vzniká single point of failure. Na druhou stranu velcí operátoři mají pro svoje potřeby pořád dost veřejných adres, takže se NATování 1:N pořád spíš snaží vyhnout. Konečné výstupní uzly nemusí být shodné s NATem, spíš to tak bude u hodně malých „operátorů“, kteří mají jedinou konektivitu do internetu.
4. Pozoruji zvláštní věc: zatímco interní IP neveřejnou (100.45.22.33 - tzv IPv4 shared spae, to bych chtěl vysvětlit co je zač), a externí klasicky nějakou jinou třeba 66.34..... , jak je možné, že se dostanu na IP 10.xxx.xxx.xxx (ano deset). Jak je to routováno? je o dashboard operátora.
IP adresy z privátních bloků (např. ty 10.0.0.0/8) nejsou routovatelné v globálním internetu. Ale ISP si je ve své síti může routovat jak je libo. Problém je, že vy si je můžete použít také ve své síti, a pak se na ten dashboard nedostanete, protože se ty adresy budou routovat uvnitř vaší sítě a do sítě ISP se vůbec nedostanou. V takhle jednoduchém případě se to asi nestane, prostě si zvolíte jiný rozsah – ale přidejte do toho záložní konektivitu od jiného ISP nebo nějakou VPN a hned se můžete dostat do problémů, že se vám někde sejdou stejné privátní rozsahy z různých sítí.
Souvisí s odpovědí nějak BGP protokol?
Spíš ne. Pomocí BGP si operátoři vyměňují informace o tom, kterou cestou je dostupná která síť – konfigurují se na jeho základě routovací tabulky. Teoreticky by se IP adresa pro NAT mohla vybírat na základě routovací tabulky, ale byla by to spíš komplikace bez reálného přínosu.