Nespojitá maska sítě

Petr_Svetr

Nespojitá maska sítě
« kdy: 01. 09. 2011, 16:00:03 »
Zdravim, nejsem sitar, ale narazil jsem na tuhle definici. Nasel by se nekdo, kdo by mi polopaticky vysvetlil o co jde a pouziti teto techniky (nejlepe na praktickem prikladu).
Na google jsem nasel jenom povidani o spojite masce a dokonce i tvrzeni, ze MUSI byt vyhradne spojita, coz neni uplne presne.
Diky


houska

Re: Nespojitá maska sítě
« Odpověď #1 kdy: 01. 09. 2011, 16:10:26 »
http://cs.wikipedia.org/wiki/Maska_s%C3%ADt%C4%9B precti si to a pak se znovu zeptej cemu nerozumis

smoofy

  • *****
  • 1 053
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #2 kdy: 01. 09. 2011, 16:35:52 »
Clanek dle meho nazoru nevystihuje a nepopisuje pisateluv dodaz. Spojitost masky znamena, ze je tam nepretrzity retezec jednicek a zbytek nuly.

Priklad (decimalni tvar - binarni tvar):
255.255.255.0 - 11111111.11111111.11111111.00000000 da se zapsat rovnez jako x.x.x.x/24 a znamena to, ze prvnich 24 bitu IP adresy site oznacuje sit a poslednich 8 bitu znaci stanici.

Stejne tak muze byt i:
255.0.0.0 - 11111111.00000000.00000000.00000000 - x.x.x.x/8 coz je stejny pripad s tim rozdilem ze sit je urcena prvnimi 8 bity a stanice poslednimi 24

Ciste teoreticky by mohlo fungovat i nespojite znaceni. Maska totiz funguje jako filtr IP adresy oproti IP adrese takze treba 192.168.1.1/24 je:


11000000.10101000.00000001.00000001
11111111.11111111.11111111.00000000

Kazdej bit nad jednickovym bitem masky urcuje adresu site a kazdy bit nad nulovym adresu stanice. Cislo /24 tedy znamena pocet jednickovych bitu v masce a tedy i pocet bitu urcujicich sit a protoze se to vsechno uvadi pro jednoduchost v decimalnich cislech, bylo by pro bezneho smrtelnika tezko predstavitelne mit napriklad nasledujici rozsah v decimalni podobe a navic by to odporovalo norme.

11000000.10101000.00000001.00000001 - IP
01110110.11000110.11011100.00010010 - Maska

DgBd

  • ****
  • 282
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #3 kdy: 01. 09. 2011, 17:06:10 »
Dřív mohly být masky opravdu nespojité, nicméně v některém z RFC to bylo opraveno na spojité.

Použít by to šlo třeba na rozdílné routování - sudé adresy posílám doleva, liché doprava:

route add -net 192.168.1.0 mask 255.255.255.1 gw doleva
route add -net 192.168.1.1 mask 255.255.255.1 gw doprava

jenže to naštěstí už nejde :-)

DgBd

  • ****
  • 282
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #4 kdy: 01. 09. 2011, 17:11:56 »
Při routování se totiž  provádí přibližně takové porovnání:

if (IP_cíle & mask ) xor ( zaznam_v_routovaci_tabulce & mask ) == 0 then
     IP_cíle vyhovuje záznamu a udělej s ním tedy něco



DgBd

  • ****
  • 282
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #5 kdy: 01. 09. 2011, 17:15:13 »
Při routování se totiž  provádí přibližně takové porovnání:

if (IP_cíle & mask ) xor ( zaznam_v_routovaci_tabulce & mask ) == 0 then
     IP_cíle vyhovuje záznamu a udělej s ním tedy něco

chybička se vloudila, mělo by být spíš:

( IP_cíle xor zaznam ) & mask == 0

smoofy

  • *****
  • 1 053
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #6 kdy: 01. 09. 2011, 17:17:34 »
A opravdu to už nejde vůbec a nebo se to jen nepoužívá? Teoreticky to stále možné je ne? Záleželo by potom na implementaci sitoveho stacku na jednotlivych zarizenich.

DgBd

  • ****
  • 282
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #7 kdy: 01. 09. 2011, 17:23:00 »
A opravdu to už nejde vůbec a nebo se to jen nepoužívá? Teoreticky to stále možné je ne? Záleželo by potom na implementaci sitoveho stacku na jednotlivych zarizenich.

před pár lety jsem na to narazil taky, dokonce jsem to hledal v RFC a dřívější RFC se o nutnosti spojitosti nezmiňovaly, nicméně v jednom pozdějším RFC jsem to našel, ale byla to taková dost zastrčená poznámka.

Ostatně v linuxu to určitě jde udělat přes firewallová pravidla, takže kdo chce kam, pomožme mu tam :-)

DgBd

  • ****
  • 282
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #8 kdy: 01. 09. 2011, 17:34:25 »
RFC 1812:
The bit positions containing this extended network number have
   historically been indicated by a 32-bit mask called the subnet mask.
   The <Subnet-number> bits SHOULD be contiguous and fall between the
   <Network-number> and the <Host-number> fields.  More up to date
   protocols do not refer to a subnet mask, but to a prefix length; the
   "prefix" portion of an address is that which would be selected by a
   subnet mask whose most significant bits are all ones and the rest are
   zeroes.  The length of the prefix equals the number of ones in the
   subnet mask.  This document assumes that all subnet masks are
   expressible as prefix lengths.

smoofy

  • *****
  • 1 053
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #9 kdy: 01. 09. 2011, 18:40:23 »
Z toho evidentne vypliva ze to mozne technologicky je, jen se to nedoporucuje z duvodu zmatenosti pojmu a nedal by se pouzivat prefix. Ne ze bych to teda k necemu potreboval :).

6

Re: Nespojitá maska sítě
« Odpověď #10 kdy: 01. 09. 2011, 19:14:20 »
Lze to a používá se to.. Jen trochu jinak.. Používá se potom tzv. divoká (wildcard) maska, což není nic jiného než invertovaná klasická maska. Čili maska 255.255.255.0, wildcard maska 0.0.0.255.

http://en.wikipedia.org/wiki/Wildcard_mask

smoofy

  • *****
  • 1 053
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #11 kdy: 01. 09. 2011, 19:34:35 »
Ok, zajimave zjisteni. I v tomto pripade se ale jedna o masku spojitou :).

DgBd

  • ****
  • 282
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #12 kdy: 01. 09. 2011, 19:51:23 »
Z toho evidentne vypliva ze to mozne technologicky je, jen se to nedoporucuje z duvodu zmatenosti pojmu a nedal by se pouzivat prefix. Ne ze bych to teda k necemu potreboval :).

No, ono je technologicky možné všechno. Nicméně SHOULD je poměrně jasné doporučení. Je to asi stejné jako říct, že RFC je pouze "žádost o komentář", takže se tím nemusím řídit :-)

DgBd

  • ****
  • 282
    • Zobrazit profil
    • E-mail
Re: Nespojitá maska sítě
« Odpověď #13 kdy: 01. 09. 2011, 19:52:25 »
Lze to a používá se to.. Jen trochu jinak.. Používá se potom tzv. divoká (wildcard) maska, což není nic jiného než invertovaná klasická maska. Čili maska 255.255.255.0, wildcard maska 0.0.0.255.

http://en.wikipedia.org/wiki/Wildcard_mask

no, obávám se, že wildcard mask v tomto případě nic neřeší.

6

Re: Nespojitá maska sítě
« Odpověď #14 kdy: 01. 09. 2011, 19:55:48 »
Řeší.. Na rozdíl od "normální" masky, která je vždy spojitá, se pomocí wildcardu může napsat například na wiki popisovaný access list, který se chová jinak pro sudé a jinak pro liché ip adresy.