How many host addresses are available on the mobile network using this subnet mask? - networking

I need help to discover how to identify how many host addresses are available on the mobile network using this subnet mask 255.128.0.0.
I know the answer is 2^23-2 = 8388608 (8388606 - less subnet address and broadcast address)
But why is it this answer. The mobile network is a class A address that has 2^24-2 host addresses. So would the number of hosts on the subnet mask always be 1 less, is this why it is 23?
Or is this because as there is 128 shown after 255 and this is 1000 0000 that one bit is occupied and is less than 24?
I will be very grateful for an answer as I have looked everywhere. Thanks

Subnet masks and network classes are related but distinct.
You say that the base network is a class A network. That indicates to me that it is some network with an address range of n.0.0.0 to n.255.255.255, where n <= 127. (See https://en.wikipedia.org/wiki/Class_A_network#Introduction_of_address_classes.) This class A network itself has an effective subnet mask of 255.0.0.0, with 24 bits of freedom.
The subnet mask of 255.128.0.0 represents an additional narrowing of the wider class A network. Apparently the class A network has been partitioned in two by reserving one extra bit. Normally it would be further allocated into fairly narrow subnets.
Because the subnet mask you provide fixes an additional bit beyond the class A mask, it has only 23 bits of freedom. This is why the exponent in your calculation is 23 rather than 24.

Related

Subnetting network Class B possible masks for maximum 120 hosts

I have an Ipv4 180.3.0.0 (class B, network bits reserved - 16bits).
What are my possible subnet masks if i want my network to have at least 22 subnets and 120 maximum hosts?
I can understand that i need to give 5 bits for 22 subnets and 7 bits for 126 usable hosts but i can't undestand how when the question ask a minimum 22 subnets and a maximum 120 hosts each subnet.
What i tried so far is i tried to give certain bits to the subnet part and the others to hosts part, creating a range of possibilities but i don't see how that solves my problem.
Anyone can help me understand the logic behind this?
As I see it, the "at least" and "maximum" constraints indicate the priority of the values: the 120 maximum hosts carries a bit more weight as it dictates the size of mask you will need to use even after you've satisfied the number of subnets constraint. With a /16 network it would be easy to subnet it to provide more than enough large networks. For example, you could subnet it to a /24 and get 256 subnets (which is fine given the at least 22 networks condition) each with 254 host addresses. However, this fails the maximum 120 hosts constraint. So to satisfy the scenario you must select a mask that still provides many more subnets than required but that are each smaller in size (less than 120 hosts).

ip range and subnet mask

I have:
ip range,
subnet mask.
I need to assign ip addresses for devices in subnets (there are five of them and they are with different number of hosts in each of them).
So for instance ip range is 192.168.244.0 - 192.168.245.555 and mask /27.
Is first value of the given range(192.168.244.0) is network ip or i need to find it in another way? Because if i take 192.168.244.0/27 there are not enough space for all hosts. Also task says to use given mask for all the five subnets, so i do not understand if 27 is the network mask or mask of subnets. Thanks!
The range 192.168.244.0 - 192.168.245.2(?)55 has got a /23 mask.
They begin to differ in the third octet in the least significant bit. 8 bits in each of the first two octets plus 7 in the third is 23. The network address is 192.168.244.0/23 (all host bits zero).
Check this great answer on NESE for subnet calculations.

CIDR vs Classful subnetting

I was studying about Classful addressing with subnetting and Classless addressing but I am not able to clearly understand the difference/advantages between the two of them.
Suppose I have a company wants only 32 public IP addresses I can give them a Class C address with a subnet of 27 bits. Similarly I could give them a CIDR subnet to achieve the same result.
|What is my advantage in using CIDR?
| Why was CIDR required even after subnetting can achieve the same result?
| Shortcomings of subnetting with classful addresses.
Thanks in advance.
You are confusing a couple of concepts. Inter-Domain routing under network classes required that entire address class blocks be assigned to a single entity. There was no way to route inter-domain traffic except by class. You could subnet within a single entity, but you could not divide a classful block between entities.
All CIDR is doing is saying that the classes no longer exist, and you can break up what used to be a classful address block among different entities.
Network classes no longer exist, and they really are studied only for historical purposes. Learn how to subnet using CIDR first (become expert at it), then you can learn about network classes as a history lesson.
Class A starts with first bit 0
Class B starts with first two bits 10
Class C starts with first three bits 110
Class D starts with first four bits 1110
Class E starts with first four bits 1111
My friend, classful addressing is basically dividing the total ipV4 range into five classes :
Class A
Class B
Class C
Class D
Class E
whereas CIDR is based on concept of subnetting.
In your example , your company wants 32 public ip addresses. When we give them a class C address for example : 192.168.2.0 , their company will be reserved for whole ip addresses in range 192.168.2.1 - 192.168.2.254.But they only want 32 ip addresses which means 223 ip addresses will be wasted. This is the constraint of classful addressing . Now if we look at just subnetting , class c ip address has default subnet of 255.255.255.0 so if we divide the range of 192.168.2.0 in 6 subnets each containing 32 available ip addresses your problem is solved. But, if we take this example to higher level we will require CIDR. According to traditional subnetting, we can not combine the addresses from the networks 192.168.2.0 and 192.168.3.0 because the netmask for class C addresses is 255.255.255.0.However, using CIDR notation, we can combine these blocks by referencing this chunk as 192.168.2.0/23. This specifies that there are 23 bits used for the network portion that we are referring to. With this ,the 24th bit can be either 0 or 1 and it will still match, because the network block only cares about the first 23 digits.
CIDR allows us more control over addressing continuous blocks of IP addresses. This is much more useful than the subnetting we talked about originally . Your example only requires subnetting but if we require huge amount of addresses so that we may require to link class C address with class B portion , we will require CIDR.
IP Addresses have stayed the same. What has changed is "How devices can determine Network and Node part from an IP Address. With classful IP Address based processing, the number of bits assigned to network and host parts were fixed. For example when processing ip addresses using classes concept, the system will first determine the class of the IP Address and then use predetermined subnet mask to determine the network portion and host portion.
For class A first octet is network bit which allows 126 networks to be represented.
Due to restrictions on number of hosts and networks imposed by classes, you can define your own subtask mask which represent the network and host part of an IP address regardless which IP Address class you are using. The way that subnet mask is represented in text is called the "CIDR Notation".

taking an ip and getting the subnet mask, & cidr

I have found this website calculator that explains the ip class's (A,B,C,D,E ) and also how to get the subnet mask, he was not very clear about how to configure the number of nodes (formula for figuring out the number of 'host' bits), he says 'Since you know the number of nodes, you need to find 'n'.' to get 2^6 - /26. I don't understand how he knows to use 64 nodes.
subnet calculator
First depict the ip address in binary. Take 61.246.19.18 and convert to binary:
ip address: 00111101.11110110.00010011.00010010
First we determine what class of address it is:
If the first bit is 0 it is a Class A address If the first two bits are 10 it is a Class B address If the first three bits are 110 it is a Class C address If the first four bits are 1110 it is a Class D multicast address If the first four bits are 1111 it is a Class E experimental address
Your example is a Class A address. The default subnet mask for a Class A address is:
subnet mask: 11111111.00000000.00000000.00000000
The formula for figuring out the number of 'host' bits in a subnet mask is
2^n=(number of nodes ) (2^n means '2' to the power of 'n')
Since you know the number of nodes, you need to find 'n'.
Because you want 64 node(s), you want to leave 6 - '0' bits in the subnet mask since 64 = 2 ^ 6.
This will give you the following subnet mask:
subnet mask: 11111111.11111111.11111111.11000000
Which is referred to as /26 or in dotted decimal notation as 255.255.255.192
Most of the topics here i have searched say this cannot be done to find the /cidr range from a given ip address, but this webpage subnet calculator does create the range from a given ip. I understand how to convert ip to binary and also get the class subnet mask, but he did not use these to get his 64 host bits result, I think he skipped how to configure the hosts bits after he converted the class subnet mask.
also alot of the online calculators also require you to manually put the cidr range, to get the ip's range, etc. this seems to be the only calculator example i can find that will create the ip information with only the given ip address.
I need to collect the ip range from just the given ip to block a user from my website from registering, if they have already been banned for chargeback reasons. So I would like to create a php script to compare a new user ip to the banned ip's list ranges. which would determine if they are ban evading by creating new accounts.
Thanks for any help.
From Networking point of view:
/26 means 26 Network bits and 6 hosts bits.
For simplification you can use this formula
Network Bits (NB) + Host Bits (HB) = 32
/26 represents netmask or we can say NB= 26, which means HB = 32-26 = 6
Which means you will have 64 nodes (2^HB => 2^6 = 64) in single subnet.
This simple CIDR Tutorial can be helpful.
You can also identify smallest possible network size from given IPs.
Convert those IP to binary.Then calculate the common bits in IPs, that will be the network bits, based on which you can find subnet mask.
For example
Let's say we have 2 IPs
192.168.24.12 and 192.168.24.76
192.168.24.12 in binary 11000000 10101000 00011000 00001100
192.168.24.76 in binary 11000000 10101000 00011000 01001100
Here first 25 bits are common bits. Which means these IPs can be from /25 subnet.
In this example, the number of nodes is your own input. This is you saying, I have 64 machines and I need to find enough IPs for them all on my given network. Then you use this calculation method to determine the subnet mask and IP allocation.
The article does a poor job explaining this, though.

Calculate Subnetmask from IP range

This was one task I had as homework I just can't seem to understand. And my teacher is having a hard time explaining it to class. So here I am:
The problem:
What is the subnet mask of following host-address range? 99.224.0.1 - 99.239.255.254
My solution (or as far as I got)
First i wrote down the IPs in binary:
99.224.0.1
01100011.11100000.00000000.00000001
99.239.255.254
01100011.11101111.11111111.11111110
What I know is this is a A class network. And I thought it must have something to do with the difference in the bits, so I started to compare. (highest first)
01100011.11101111.11111111.11111110
01100011.11100000.00000000.00000001 (diff)
-----------------------------------
00000000.00001111.11111111.11111111
I ignored the last bit, because of the network / broadcast address.
Now I can turn it around and have my subnet mask?:
11111111.11110000.00000000.00000000
255.240.0.0
My question is: Is my approach correct? Is there an easier way to do it (by hand, or calc)?
If I'm very far from the correct way to do it, could someone help me understand?
Thanks for any help.
Your answer is correct, except that classful addresses don't exist anymore. The internet moved to Classless Inter-Domain Routing (CIDR) in 1993 so your terminology is a bit outdated ;)
IP networking these days works with routing prefixes. A prefix is a range of IP addresses defined by the first address in that range and the number of fixed bits at the start of the address. Your example shows this nicely.
Your example range is 99.224.0.1 - 99.239.255.254. Actually it is 99.224.0.0 - 99.239.255.255 because when used on a subnet the first and last addresses are reserved (but still part of the subnet and prefix).
The first address in the prefix we already have: 99.224.0.0. You can see the prefix length from your binary calculation (slightly modified):
01100011.11101111.11111111.11111111
01100011.11100000.00000000.00000000
----------------------------------- (xor)
00000000.00001111.11111111.11111111
----------------------------------- (not)
11111111.11110000.00000000.00000000
Just count the number of 1s at the beginning: 12. So your prefix is 99.224.0.0/12. This prefix covers all addresses that match 01100011.1110****.********.********.
When writing the prefix length down as a subnet mask you indeed get 255.240.0.0.
A little off-topic here because it is about networking and not about the algorithm to calculate the subnet mask, but maybe helpful: an example of how you can plan network addressing:
Lets say that for my office building I get IP addresses 192.0.2.0/24 (that is 192.0.2.0 - 192.0.2.255, subnet mask 255.255.255.0, 256 addresses). I need 50 addresses for servers, 100 addresses for employee devices and 40 addresses for guests.
Because addressing works with prefixes everything you get is a power of 2. If you use a /24 you have a prefix with 256 addresses. The full address is 32 bits, the first 24 are fixed so you have 8 bits left to use. 28 = 256. If you use a /25 you have a prefix 128 addresses, a /26 has 64 addresses etc.
That way you can also split up a prefix. 192.0.2.0/24 can be split up into 192.0.2.0/25 and 192.0.2.128/25. And those can be split again and again until you have a prefix that covers only a single address: a /32.
back to the example. To get (at least) 50 addresses for the servers I need to round up to the next power of 2. That is 26 = 64. To have that many addresses I need a /26 prefix. For the client devices I need to round up to 128 (27) so we need a /25. For the guests the next power of 2 is 64 (26) so a /26.
So we need to split up out /24 into a /25 and two /26s. One possible solution is:
Client devices: 192.0.2.0/25
Servers: 192.0.2.128/26
Guests: 192.0.2.192/26
Once we configure these subnets on our devices the first and last address of each subnet become special (the network and broadcast address) so we can use these ranges for our devices:
Client devices: 192.0.2.1 - 192.0.2.126
Servers: 192.0.2.129 - 192.0.2.190
Guests: 192.0.2.193 - 192.0.2.254

Resources