2012-04-05 12 views
0

der Benutzer entweder wählt AB oder C. A - 10.0.0.0/8 B - 172.16.0.0/16 C - 192.168.0.0/24Objective C - Berechnen der letzten Host in einem Netz

dann Sie können einen Schieberegler ziehen, um auszuwählen, wie viele Bits sie für den Netzwerkabschnitt benötigen.

Nachdem sie das getan haben, möchte ich den letzten Host in diesem Netzwerk berechnen.

Der Einfachheit halber, nur Subnetz Null. Also hätte 10.0.0.0/16 immer noch 10.0.0.0 als Netzwerkadresse und 10.0.0.1 als ersten Host.

Wie kann ich das tun ??

Antwort

2

Invertieren Sie die Subnetzmaske, kippen Sie dann das letzte Bit und ODER es mit der Netzwerkadresse.

network address: 10.0.0.0 
subnet mask: 255.255.0.0 

binary snm: 11111111.11111111.00000000.00000000 
inverted:  00000000.00000000.11111111.11111111 

flipped last bit: 00000000.00000000.11111111.11111110 
binary net addr: 00001010.00000000.00000000.00000000 
OR operation:  00001010.00000000.11111111.11111110 

last host:  10.0.255.254 
+1

Gute Antwort ... es sollte erwähnt werden, dass die Vorstellung eines "letzten Hosts" nur dann sinnvoll ist, wenn "Was ist der IP-Bereich?" Es ist oft - fast die Regel -, dass DHCP-Server nur einen Teilbereich von Adressen bedienen und der Rest für die statische Nutzung verfügbar bleibt. – bbum

+0

Aber wie würde ich es im Code tun .. – user1021085