Kezdőoldal » Számítástechnika » Programozás » Subnet számolás?

Subnet számolás?

Figyelt kérdés

Írnom kell egy programot c-ben ami az IP osztályból(A,B,C) és az alhálózatok számából kiszámolja a subnet maskot.

Viszont fogalmam sincs hogy ip nélkül hogy kell ezt kiszámolni

Előre is köszi a segítségeket!



2019. nov. 5. 17:46
 1/4 anonim ***** válasza:
Mi van?
2019. nov. 5. 18:06
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:
Gondolom meg kell adni egy IP-osztályt: 192.168.0.1 és be kell kérni hány gép lesz a hálózatban?
2019. nov. 5. 18:09
Hasznos számodra ez a válasz?
 3/4 A kérdező kommentje:

Írj egy programot (JAVA vagy C nyelven), amely a parancssori paraméterek alapján kiszámolja az alhálózati maszkot.


Input (parancssori argumentum): egy címosztályt (betűvel jelezve), illetve az alhálózatok számát.


Output: a kapott alhálózati maszk


A programodban kezeld az alábbi eseteket is:


Csak A, B vagy C osztályos címet lehet tovább bontani, ettől eltérő paraméternél jelezz hibát!

Vizsgáld meg, hogy az adott címosztály esetén van-e lehetőség a megadott számú hálózatra felosztani a tartományt?

Pl.


Input:


SubnetCalc A 4


Output:


subnet mask: 255.192.0.0

2019. nov. 5. 18:18
 4/4 anonim ***** válasza:

Bitekben...


[link]


A: /8 Tehát a MASZK 8 bites: 11111111.00000000.00000000.00000000

11111111.00000000.00000000.00000000 (2) = 255.0.0.0 (10)


B: /16 Tehát a MASZK 16 bites: 11111111.11111111.00000000.00000000

11111111.11111111.00000000.00000000 (2) = 255.255.0.0 (10)


C: /24 Tehát a MASZK 24 bites: 11111111.11111111.11111111.00000000

11111111.11111111.11111111.00000000 (2) = 255.255.255.0 (10)


/x azt jelenti, hogy annyi 1-es van az elejétől számolva. Ennyi erővel ez is egy maszk:

/11 -> 11111111.1110000.00000000.00000000

11111111.11100000.00000000.00000000 (2) = 255.112.0.0 (10)



- - - - - - - - - - - - - - - - - - - - - - - - -

Nyilván IP hálózat címet meg úgy számolunk, hogy:

LEgyen az IP a: 10.140.1.20 -> 00001010.10001100.00000001.00010100


Amit bitenként ÉS-elünk (Tehát ha egymás alatt 1-es van akkor 1, minden más esetben 0):


00001010.10001100.00000001.00010100

11111111.11100000.00000000.00000000 (&)


00001010.10000000.00000000.00000000 => 10.128.0.0 (10.140.1.2 hálózati címe)

2019. nov. 6. 20:28
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!