Wyznaczenie ilości urządzeń w sieci

0

Cześć, mam takie zadanko:
user image

I mam z nim problem, bo sugerując się tym artykułem i bardzo ładną tabelką http://edu.pjwstk.edu.pl/wyklady/ups/scb/main19.html takiej możliwości podsieci i urządzeń nie da się otrzymać. Czy to zadanie jest błędnie napisane ?

Kombinowałem z liczbą podsieci w bloku sieci równą 8 bitów i wyszła ogromna liczba podsieci dla 23 bitów maski, a to raczej jest błędne rozwiązanie. Czy blok sieci może mieć 8 bitów ?

Proszę o pomoc, pozdrawiam.

0

Korzystając z CIDR i VLSM możesz mieć w zasadzie dowolną ilośc bitów na maskę.
edited: trochę pomieszałem
Ech:
Zakładam że chodzi o IPv4 i mamy 32 bity adresu.
Skoro potrzebujemy 250 urządzeń w każdej podsieci czyli potrzebujemy kodować to na 8 bitach. (2^8 = 256)
Skoro potrzebujemy 500 podsieci to potrzebujemy podsieci kodować na 9 bitach (2^9 = 512)
W efekcie potrzebujemy mieć maskę 24 bitową i konieczny jest zestaw adresów który daje nam możliwość wykorzystania 17 bitów na własną adresację.
na przykład 10.0.0.0 - 10.1.254.254

0
Shalom napisał(a)

Korzystając z CIDR i VLSM możesz mieć w zasadzie dowolną ilośc bitów na maskę.
Ech:
Zakładam że chodzi o IPv4 i mamy 32 bity adresu.
Skoro potrzebujemy 250 urządzeń w każdej podsieci czyli potrzebujemy kodować to na 8 bitach. (2^8 = 256)
Skoro potrzebujemy 500 podsieci to potrzebujemy podsieci kodować na 9 bitach (2^9 = 512)
W efekcie potrzebujemy mieć maskę 17 bitową.

Rozumiem. A jeżeli mamy maskę /23 bitową to wygląda ona tak:
11111111.11111111.11111110.00000000 (255.255.254.0)

W tym przypadku trzeci oktet definiuje bity podsieci czyli mamy 254 podsieci 2*2^8-2 możliwości podłączenia urządzeń, tak ?

Tutaj pojawia się moje pytanie bo na tej stronie http://edu.pjwstk.edu.pl/wyklady/ups/scb/main19.html w tabelce jest podział "Liczba podsieci w bloku sieci" na 16/20/24 bity, skąd to się bierze i kiedy można użyć tego podziału ? Rozumiem, że mógłbym użyć też bloku 8 bitowego i wtedy mógłbym utworzyć znacznie więcej podsieci ale liczba urządzeń w sieci byłaby stała, tak ?

Czyli powyższy przypadek rozpatrywałem dla bloku 16-bitowego, a jeżeli miałbym rozpatrywać dla bloku 8 bitowego to mógłbym utworzyć (2gi oktet * 3ci oktet -2) sieci czyli 255*254-2 podsieci.

Gdzie jest zapisana informacja o tym jakiego bloku użyłem ?

Mam dwie książki od sieci i w żadnej nie jest to opisane i skacze tylko po opracowaniach na necie i stąd moje problemy w niedorozumieniu, ehh :/

Czy dobrze rozumiem to ?

0

Trochę wcześniej pomieszałem, teraz powinno być ok
Historycznie routing był klasowy, tzn mieliśmy klasy adresów A, B, C i D. klasa A to była klasa X.0.0.0 gdzie na hosta przypadały 3 oktety, klasa B X.X.0.0 z dwoma oktetami, klasa C X.X.X.0 z jednym oktetem i klasa D ze specjalnymi adresami (np. do komunikacji grupowej). Ale stosowanie takich "sztywnych" masek ograniczało możliwości konfiguracyjne, patrz w naszym powyższy przykładzie, konieczne jest tylko 17 bitów na maskę, a w przypadku routingu klasowego musielibyśmy użyć 16 bitów i niepotrzebnie robić większe podsieci.
Dlatego opracowano CIDR i VLSM które pozwalają stosować dowolne maski.
Poza tym strasznie mieszasz. Nie ma takiego rozgraniczenia na ilość podsieci i ilość hostów. Maska określa nam tylko adres podsieci, adresy hostów i ilość hostów, nic więcej. W szczególności wcale nie mówi nam o ilości podsieci! Ilość podsieci wynika z tego jakie adresy mamy do dyspozycji i jakiej użyjemy maski. Jeśli nie mówiliście na lekcjach o VLSM to możliwe że możecie sobie założyć maski związane z klasą,

0
Shalom napisał(a)

Trochę wcześniej pomieszałem, teraz powinno być ok
Historycznie routing był klasowy, tzn mieliśmy klasy adresów A, B, C i D. klasa A to była klasa X.0.0.0 gdzie na hosta przypadały 3 oktety, klasa B X.X.0.0 z dwoma oktetami, klasa C X.X.X.0 z jednym oktetem i klasa D ze specjalnymi adresami (np. do komunikacji grupowej). Ale stosowanie takich "sztywnych" masek ograniczało możliwości konfiguracyjne, patrz w naszym powyższy przykładzie, konieczne jest tylko 17 bitów na maskę, a w przypadku routingu klasowego musielibyśmy użyć 16 bitów i niepotrzebnie robić większe podsieci.
Dlatego opracowano CIDR i VLSM które pozwalają stosować dowolne maski.
Poza tym strasznie mieszasz. Nie ma takiego rozgraniczenia na ilość podsieci i ilość hostów. Maska określa nam tylko adres podsieci, adresy hostów i ilość hostów, nic więcej. W szczególności wcale nie mówi nam o ilości podsieci! Ilość podsieci wynika z tego jakie adresy mamy do dyspozycji i jakiej użyjemy maski. Jeśli nie mówiliście na lekcjach o VLSM to możliwe że możecie sobie założyć maski związane z klasą,

Napisałeś, że nie ma czegoś takiego jak rozgraniczanie na ilość podsieci, a tutaj edu.pjwstk.edu.pl/wyklady/ups/scb/main19.html wyraźnie w tabeli jest napisane, że Liczba podsieci w bloku sieci. Na zajęciach też korzystaliśmy z "wyliczania ilości podsieci" właśnie poprzez bity podsieci. To jak z tym w końcu jest ?

Jeżeli mam na przykład 18 bitową maskę i korzystam z tej nowej notacji, to mam coś takiego:

11111111.11111111.11000000.00000000 (255.255.192.0)

I jak przeanalizować ją pod kątem wyliczenia ilości podsieci i ilości urządzeń. Czy w takim przypadku urządzenia=hosty=adresy ip ?

0

Brawo, ale nie rozumiesz co czytasz ;] Ta ilość podsieci wynika z tego co opisałem wyżej. Maska określa TYLKO ilość hostów w sieci, adres broadcast i adres sieci. Nic więcej. Ale wiedząc ile masz bitów maski i ile masz bitów do dyspozycji możesz policzyć sobie ile możesz zrobić podsieci, to chyba logiczne.
Jeśli masz pule adresów 10.0.0.0 czyli masz do dyspozycji 24 bity na adresację to możesz z tego zrobić na przykład:

  • 254 podsieci i w każdej 254*254 hosty czyli maska /16
  • 254*254 podsieci i w każdej 254 hosty czyli maska /24
  • 254254254 podsieci z jednym hostem każda czyli maska /32
  • jedną wielką podsieć z 254254254 urządzeniami czyli maska /8
    W ten właśnie sposób możesz wyznaczyć ilość podsieci. W tamtej tabelce dokładnie to opisali zakładając że do dyspozycji masz 16, 20 i 24 bity.
0
Shalom napisał(a)

Brawo, ale nie rozumiesz co czytasz ;] Ta ilość podsieci wynika z tego co opisałem wyżej. Maska określa TYLKO ilość hostów w sieci, adres broadcast i adres sieci. Nic więcej. Ale wiedząc ile masz bitów maski i ile masz bitów do dyspozycji możesz policzyć sobie ile możesz zrobić podsieci, to chyba logiczne.
Jeśli masz pule adresów 10.0.0.0 czyli masz do dyspozycji 24 bity na adresację to możesz z tego zrobić na przykład:

  • 254 podsieci i w każdej 254*254 hosty czyli maska /16
  • 254*254 podsieci i w każdej 254 hosty czyli maska /24
  • 254254254 podsieci z jednym hostem każda czyli maska /32
  • jedną wielką podsieć z 254254254 urządzeniami czyli maska /8
    W ten właśnie sposób możesz wyznaczyć ilość podsieci. W tamtej tabelce dokładnie to opisali zakładając że do dyspozycji masz 16, 20 i 24 bity.

Czyli wracając do zaproponowanego przeze mnie zadania dla 18 bitowej maski
11111111.11111111.11000000.00000000 (255.255.192.0)

Tutaj w trzecim oktecie pojawiają się dodatkowe bity, czy to coś zmienia ?
Dodatkowo tutaj nie mam adresu sieci podanego.

Zrobiłbym to tak:

Zawsze z tego mogę utworzyć (tylko): 26 * 28 - 2 = 16382 hosty

oraz

Mogę utworzyć:
2^2-2 = 2 podsieci
lub (w zależności od wybranego adresu sieci / puli)
28 * 22 - 2 = 1022 podsieci

A więc adresy sieci mogą być następujące dla 18 bitowej maski:
120.10.0.0 - jeżeli chcę utworzyć 2 podsieci
lub
120.0.0.0 - jeżeli chcę utworzyć 28 * 22 - 2 = 1022 podsieci

Czy teraz dobrze rozumuję ? :P

Dzięki wielkie za pomoc :)

0

Źle rozumiesz. Bo możesz przecież przeznaczyć na adresację hostów dowolną ilość z tych dostępnych bitów. Nie tylko całe oktety! Chyba ze chciałeś podać tylko przykładowe konfiguracje, wtedy ok.

0
Shalom napisał(a)

Źle rozumiesz. Bo możesz przecież przeznaczyć na adresację hostów dowolną ilość z tych dostępnych bitów. Nie tylko całe oktety! Chyba ze chciałeś podać tylko przykładowe konfiguracje, wtedy ok.

A czy jest jakaś granica ? Z tego co pamiętam to gdzieś wyczytałem, że bity na hosta muszą być co najmniej 2 (tzn. 4-ty oktet musi wyglądać tak "00000011"). A w tym przypadku jak to wygląda ? Bo jeżeli przeznaczę 1 bit z pierwszego oktetu na maskę to wtedy oktet będzie wyglądał tak: "10000000" co odpowiada liczbie 128, czyli adres wyglądałby tak 128.0.0.0 dla 10000000.00000000.00000000.00000000 A jak uzyskać w ten sposób adres sieci np. 11.0.0.0 skoro bity nie mogą być na przemian wypełniane 0 i 1, bo wtedy pierwszy oktet musiałby wyglądać tak 00001011 a tak być przecież nie może być.

Jeszcze jedna wątpliwość, bo zobacz:
Mam takie coś 192.168.0.0/26, czyli.
maska: 11111111.11111111.11111111.11000000

i chcę temu wyznaczyć podsieci. Tutaj pojawia się (1) wątpliwość, bo rozumiem, że z takiego zapisu mogę utworzyć minimum 2^2-2=2 podsieci tak czy nie ?

A więc idę dalej i tworze podsieci, chcę wykorzystać 2 bity dla podsieci z maski a więc przyjmą one wartość 01 i 10, czyli:

Podsieć 1:
Adres podsieci 1: 192.168.0.64
Adres rozgłoszeniowy tej podsieci: 192.168.0.127

Podsieć 2:
Adres podsieci 1: 192.168.0.128
Adres rozgłoszeniowy tej podsieci: 192.168.0.191

I tutaj pojawia się pewne (2ga) wątpliwość, bo w 4-tym oktecie spośród możliwości od 0-255 wykorzystuję tylko te: 64-191

No dodatkowo są wykorzystywane adresy 192.168.0.0 jako adres główny sieci oraz 192.168.0.255 jako główny rozgłoszeniowy ale co przykładowo z adresem 192.168.0.22 i inne z zakresu 1-63 dla 4-tego oktetu ? Nie są po prostu uwzględniane czy co ? Jak to wytłumaczyć sobie ?

Dzięki.

0
@DrużynaA_ napisał(a)

A czy jest jakaś granica ? Z tego co pamiętam to gdzieś wyczytałem, że bity na hosta muszą być co najmniej 2 (tzn. 4-ty oktet musi wyglądać tak "00000011"). A w tym przypadku jak to wygląda ?
Bity na hosta muszą być co najmniej 2, bo daje nam to wtedy 2^2=4 wartości adresu hosta, z czego 2 odpadają na adres sieci i broadcast.

Bo jeżeli przeznaczę 1 bit z pierwszego oktetu na maskę to wtedy oktet będzie wyglądał tak: "10000000" co odpowiada liczbie 128, czyli adres wyglądałby tak 128.0.0.0 dla 10000000.00000000.00000000.00000000 A jak uzyskać w ten sposób adres sieci np. 11.0.0.0 skoro bity nie mogą być na przemian wypełniane 0 i 1, bo wtedy pierwszy oktet musiałby wyglądać tak 00001011 a tak być przecież nie może być.
Jeśli masz maskę /1, to masz teoretycznie dwie sieci: 0.0.0.0 i 128.0.0.0. 11.0.0.0 nie jest już adresem sieci, tylko adresem hosta w sieci 0.0.0.0. Zdania o niemożności wypełniania bitów naprzemian nie rozumiem, przecież adres hosta może być dowolny (teoretycznie), a adres sieci wyznaczysz na podstawie maski.

Jeszcze jedna wątpliwość, bo zobacz:
Mam takie coś 192.168.0.0/26, czyli.
maska: 11111111.11111111.11111111.11000000

i chcę temu wyznaczyć podsieci. Tutaj pojawia się (1) wątpliwość, bo rozumiem, że z takiego zapisu mogę utworzyć minimum 22-2=2 podsieci tak czy nie ?
Z tego zapisu możesz utworzyć 2
26 różnych adresów sieci.

A więc idę dalej i tworze podsieci, chcę wykorzystać 2 bity dla podsieci z maski a więc przyjmą one wartość 01 i 10, czyli:

Podsieć 1:
Adres podsieci 1: 192.168.0.64
Adres rozgłoszeniowy tej podsieci: 192.168.0.127

Podsieć 2:
Adres podsieci 1: 192.168.0.128
Adres rozgłoszeniowy tej podsieci: 192.168.0.191
Tu się zgadza. Ale masz też przecież np. sieci 192.168.0.0, 192.168.0.192, 192.168.1.0, 192.168.200.128, 255.255.255.0 (teoretycznie) itd.

I tutaj pojawia się pewne (2ga) wątpliwość, bo w 4-tym oktecie spośród możliwości od 0-255 wykorzystuję tylko te: 64-191
To co wyżej. Hosty 1-62 należą do sieci 192.168.0.0, a 193-254 - do sieci 192.168.0.192.

No dodatkowo są wykorzystywane adresy 192.168.0.0 jako adres główny sieci oraz 192.168.0.255 jako główny rozgłoszeniowy ale co przykładowo z adresem 192.168.0.22 i inne z zakresu 1-63 dla 4-tego oktetu ? Nie są po prostu uwzględniane czy co ? Jak to wytłumaczyć sobie ?
To co wyżej. 192.168.0.22 należy do sieci 192.168.0.0. 192.168.0.255 jest rozgłoszeniem dla sieci 192.168.0.192.

Uwaga: skupiłem się tylko na adresowaniu i pominąłem kwestie faktycznej implementacji IPv4, nie uwzględniając takich rzeczy jak np. pule sieci prywatnych czy wykorzystanie poszczególnych klas adresów.

1 użytkowników online, w tym zalogowanych: 0, gości: 1