O sieci z pojedynczą bramą:
Niezależnie od ip istnieje jeszcze maska podsieci i adresy ip przydziela sie wlasnie w zakresie tej maski (bity nie zapalone). Podział na klasy adresów jest podziałem tylko administracyjnym, nie ma jakiegoś wiekszego znaczenia w zyciu... Możesz swobodnie w sieci wewnętrznej przydzielic ip klasy a (10.),b (172.16.-172.31.), c (192.168.), d (224.-239.), czy e (240.-247.). Możesz sobie przydzielać w sieci ip według swoich własnych updobań. To wszystko wewnątrz sieci nie ma znaczenia, bo na zewnatrz sieć reprezentowana jest przez jedno ip - zewnetrzne... Takie zagłębianie się może sie dziać w nieskończoność ( sieć w sieci, w jeszcze wiekszej sieci).
Ip publiczne (np. 83.38.83.38)- brama 1 rzedu - ip wewnetrzne 1 rzedu (np. 10.0.0.1) <-> Ip wewnetrzne 1 rzedu (np. 10.0.0.10)- brama 2 rzedu - ip wewnetrzne 2 rzedu (np. 192.168.0.1) ( <-> ... brama ...) * N <-> ip (n+2) -tego rzedu - twoj komp
Oczywiście adresy są dowolne, poza odgórnie ustalonym przez isp ip zewnętrznym niezależnym od administartora danej sieci.
Ważne jest to, że ip jest albo przydzielane z serwera dhcp, albo każdy komputer ma na stałe wpisane swoje ip w systemie. Zazwyczaj taki serwer jest odpalany na komputerze w sieci, przeznaczonym do swiadczenia usług, łącznie z bramą i firewallem (chociaż f-wall powinien być zwiazany z bramą, to reszta wewnętrznych usług sieciowych może być rozproszona po różnych komputerach). W jednej sieci może byc kilka podsieci... I tu docodzimy do tajemniczej maski podsieci... Maska to 32 bity, jeśli bit jest zapalony, to aby 2 kompy należały do jednej sieci, muszą mieć odpowiednie bity w adresie ip jednakowe. Ip i maska to 4 bajty (unsigned long, cardinal, dword, czy jak tam sobie nazwiesz).
Jeśli 2 kompy należą do jednej sieci ...
(ip1xor ip2)and mask = 0
Tak więc przy masce 255.255.0.0 komputery 192.168.1.100 i 192.168.0.100 bedą należały do tej samej podsieci, natomiast przy masce 255.255.255.0 juz nie, bedą również należały do tej samej podsieci, przy np. takich maskach : 255.255.254.255 (podsieć dopuszcza tylko 2 ip - rigor mortis) i 192.168.0.100 (a tu bardzo lużna maska, dopuszcza ... sporo)
//poza tym mając ip i maskę bardzo łatwo juz sobie wyliczyc adres rozgłoszeniowy, ale to juz inna bajka
Do postu poniżej:
broadcast=(ip and mask)xor(not mask) - not bitowe;, moze mozna to jakoś ładniej zapisać
Adres rozgłoszeniowy dla całej podsieci, ale nikt nikomu nie każe ograniczać się tylko do podsieci, albo też nie trzeba w sieci powiadamiać wszystkich, o czymkolwiek ;]