Fórum Root.cz

Hlavní témata => Sítě => Téma založeno: Petr_Svetr 01. 09. 2011, 16:00:03

Název: Nespojitá maska sítě
Přispěvatel: Petr_Svetr 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
Název: Re: Nespojitá maska sítě
Přispěvatel: houska 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
Název: Re: Nespojitá maska sítě
Přispěvatel: smoofy 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
Název: Re: Nespojitá maska sítě
Přispěvatel: DgBd 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 :-)
Název: Re: Nespojitá maska sítě
Přispěvatel: DgBd 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

Název: Re: Nespojitá maska sítě
Přispěvatel: DgBd 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
Název: Re: Nespojitá maska sítě
Přispěvatel: smoofy 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.
Název: Re: Nespojitá maska sítě
Přispěvatel: DgBd 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 :-)
Název: Re: Nespojitá maska sítě
Přispěvatel: DgBd 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.
Název: Re: Nespojitá maska sítě
Přispěvatel: smoofy 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 :).
Název: Re: Nespojitá maska sítě
Přispěvatel: 6 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
Název: Re: Nespojitá maska sítě
Přispěvatel: smoofy 01. 09. 2011, 19:34:35
Ok, zajimave zjisteni. I v tomto pripade se ale jedna o masku spojitou :).
Název: Re: Nespojitá maska sítě
Přispěvatel: DgBd 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 :-)
Název: Re: Nespojitá maska sítě
Přispěvatel: DgBd 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ší.
Název: Re: Nespojitá maska sítě
Přispěvatel: 6 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.
Název: Re: Nespojitá maska sítě
Přispěvatel: DgBd 01. 09. 2011, 19:56:07
Ovšem největší bomba by bylo použití nespojité netmasky v koncové síti. Něco jako: v této síti se mohou vyskytovat pouze počítače se sudou IP adresou :-) Třeba i broadcast by pak byl sudý.
Název: Re: Nespojitá maska sítě
Přispěvatel: DgBd 01. 09. 2011, 19:58:44
Ř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.

No, rád si nechám předvést, kde se wildcard maska uplatní v routování nebo při definici síťového rozhraní.

Wildcard masky se uplatňují pouze u access-listů a mají úplně stejné použití jako standardní maska, která v případě access-listu taky nemusí být spojitá. Ale na toto použití se autor původní otázky neptal.
Název: Re: Nespojitá maska sítě
Přispěvatel: 6 01. 09. 2011, 20:14:51
ano, naprostý souhlas.. Ale rozdíl je právě v tom, že standardní maska by měla být vždy spojitá, kdežto wildcard ne.. Právě proto se v access listech a podobně používá wildcard a ne standartdní maska.. Osobně jsem to nikdy nepoužil v praxi, občas je to vidět na některých soutěžích, třeba NAG a podobně..
Název: Re: Nespojitá maska sítě
Přispěvatel: Petr_Svetr 02. 09. 2011, 21:47:01
dekuji vsem za odpovedi.