I keep running into people (Ascend tech support, joeblow ISP tech support off the street) that say that it's improper to use the all 0s or all 1's subnets (ie .0 and whatever has .255 in it). Since CIDR, I thought the philosophy was 'use everything', but I can't seem to find the explicit recommendation to start using the .0 subnet... can anyone help with a pointer to the pertinent RFC ? --Zachary
I keep running into people (Ascend tech support, joeblow ISP tech support off the street) that say that it's improper to use the all 0s or all 1's subnets (ie .0 and whatever has .255 in it). Since CIDR, I thought the philosophy was 'use everything', but I can't seem to find the explicit recommendation to start using the .0 subnet... can anyone help with a pointer to the pertinent RFC ?
--Zachary
RFC 1812 --------------------------------------------------------------------------- Andrew Smith ** awsmith@neosoft.com ** Network Engineer ** 1-888-NEOSOFT ** "Opportunities multiply as they are seized" - Sun Tzu ** ** http://www.neosoft.com/neosoft/staff/andrew ** ---------------------------------------------------------------------------
I keep running into people (Ascend tech support, joeblow ISP tech support off the street) that say that it's improper to use the all 0s or all 1's subnets (ie .0 and whatever has .255 in it). Since CIDR, I thought the philosophy was 'use everything', but I can't seem to find the explicit recommendation to start using the .0 subnet... can anyone help with a pointer to the pertinent RFC ?
--Zachary
RFC 1812 RFC 1878 RFC 1879 -- --bill
In message <m0vAIRi-0001BnC@zachs.place.org>, Zachary DeAquila writes:
I keep running into people (Ascend tech support, joeblow ISP tech support off the street) that say that it's improper to use the all 0s or all 1's subnets (ie .0 and whatever has .255 in it). Since CIDR, I thought the philosophy was 'use everything', but I can't seem to find the explicit recommendation to start using the .0 subnet... can anyone help with a pointer to the pertinent RFC ?
--Zachary
Zachary, You can't us an all zeros or all ones host part. That means that if your prefix is x.y.z/24 you can't use x.y.z.0 as a host address because that is the address of the network, and you can't use x.y.z.255. The mistake that is commonly made is getting confused about this and avoiding all zeros or all ones in any octet of the prefix. If you have an address of x.y/16 and want to split up the prefix into /20s (for example), you can start numbering your prefixes at x.y.0/20, x.y.16/20, ..., x.y.240/20. If you split into /24s (*only* internally I would hope), you can number from x.y.0/24, x.y.1/24, ... x.y.255/24, and all other the values in the third octet are valid. You may run into a problem with some older software that is just plain broken. For example, the "subnet broadcast" remains, but the "network broadcast" is depricated by CIDR. If you have broken hosts on an older class B, like 191.x/16, and the subnet is 191.x.0/24, some hosts may have trouble, but I think you'd have to have not upgraded the vendor's OS for 2-3 years (in the one example I can think of). The broken host might also think 191.x.255.255 is a "network broadcast", which would not be a problem unless it sits on other subnets and broadcasts to all 191.x.y/24 when it sees that. The answer is it is absolutely legal to use all ones or all zeros in an octet of the network part. There used to be some broken software that gave you trouble due to remnants of "address class" based code. That broken software should by now be long gone. I don't know about Ascend's implementation, though I have heard they were in some ways CIDR challenged. If Ascend's software is broken, get them to stop spreading misinformation and admit that it is just a bug on their part and preferably also fix the bug. Curtis
On Tue, 8 Oct 1996, Curtis Villamizar wrote:
You can't us an all zeros or all ones host part. That means that if
[...]
The answer is it is absolutely legal to use all ones or all zeros in an octet of the network part. There used to be some broken software that gave you trouble due to remnants of "address class" based code. That broken software should by now be long gone.
Hmmm...What if you have, say, 192.168.2.0/23. So the net address is 192.168.2.0 and the broadcast is 192.168.3.255. You should then be able to use any address in between those, right? Like 192.168.2.255 and 192.168.3.0? Both FreeBSD and BSDI appear to choke on those two addresses. Traceroute from boxes with a default route do not even get to the router (which does have classless forwarding enabled, BTW). Interestingly enough, an address like 172.16.3.0 does make it to the router, leading me to believe that there is still some classful kruft hanging around. -BD
In message <Pine.BSI.3.95.961008132823.23795A-100000@ns2.harborcom.net> you wri te:
Both FreeBSD and BSDI appear to choke on those two addresses.
My FreeBSD box does not choke on either address; tcpdump shows it sending packets destined for both addresses to my router, which then fails to respond. Bill
My apologies for the sloppy research. :( I should have checked. Ok, so the question switches to why doesn't the router respond? Like I said before, this router has ip classless enabled (and ip subnet-zero). It has a default route over one of the serial interfaces. -BD On Tue, 8 Oct 1996, Bill Fenner wrote:
In message <Pine.BSI.3.95.961008132823.23795A-100000@ns2.harborcom.net> you wri te:
Both FreeBSD and BSDI appear to choke on those two addresses.
My FreeBSD box does not choke on either address; tcpdump shows it sending packets destined for both addresses to my router, which then fails to respond.
Bill
participants (6)
-
Andrew Smith
-
Bill Fenner
-
bmanning@ISI.EDU
-
Bradley Dunn
-
Curtis Villamizar
-
Zachary DeAquila