The popular answer to the question " How does Subnetting Work? " does a nice job in explaining subnets.
I remember learning about the network classes back in CCNA class but that answer mentions "Classless Inter-Domain Routing" (CIDR) in the following way:
Back in the "old days", subnet masks weren't specified, but rather were derived by looking at certain bits of the IP address. An IP address starting with 0 - 127, for example, had an implied subnet mask of 255.0.0.0 (called a "class A" IP address). These implied subnet masks aren't used today and I don't recommend learning about them anymore.
So my question is if I have an ip address such as
22.214.171.124, (that is my public ip address assigned to my cable modem via my ISP), how do I figue out what the subnet mask is so that I can annotate the address in the proper format with something like