So the practical answer is: It really depends. It depends on:
- The exact address, and its meanings in the many RFC's
- The version and revision of your operating system
- ...And that of your router, and every other upstream router
- ...And the intelligence and sophistication of all the network admins of those routers...
I have not run into any problems accessing any sites in testing this; it seems that ultimately it's all left up to the network administrators' whims. There is usually no way for an upstream device to tell whether an address is part of a network or broadcast address, or not, as it is simply an address in a bigger block to them... So no ISPs will block you from assigning and using your network address, unless they assigned it to you and their network administrator has explicitly blocked it.
I'm sure there are security analysts and hackers out there who have insanely detailed stats on exactly how many variants of TCP-IP stack implementations are out there and what the do and do not accommodate or allow and exactly how and where they miss their mark.
Matter of fact, I'm browsing and posting this from my network address.
Don't call me a bad netizen unless you have a better solution to fixing this house of cards: the reality is that if it's possible, it will happen. The reality is that nobody really smart enough sat down and thought this whole thing through in all its possible iterations in order to come up with a completely fool-proof design, before people started using it - as with most things in life. The result? Standards where a lot of things don't add up and/or get lost in translation.
Welcome to the real world. Don't let that dissuade you from chasing the ever elusive optimal ideals... Just don't expect support from the "official" channels or forums unless you are willing to get your hands dirty and dedicate your time and life to it, building the necessary consensus, and navigating the politics around that.
So, I think what the other posters were trying to say: If you want to make this official policy and use it in production, you're on your own. (But aren't you anyways?) Maybe we'll strike it lucky and have a computer intelligence design us an IPv8 that's backwards compatible with IPv4 and IPv6 and all their broken implementations.
1@haimg Just skimming through here recently this question always intrigued me. A little more research and I have actually finally found the ACTUAL use (obsolete) of network addresses. I have also found the reason for why they are no longer used. I will be updating your answer to include these ^^. – Goblinlord – 2015-02-25T07:20:28.563
Broadcast addresses remain special - the last (all-ones) address in a subnet is always "broadcast". – user1686 – 2012-01-17T16:56:05.260
5@grawity: Not always. Only In a network larger than /31. E.g. P2P can have two addresses and no broadcast address. – haimg – 2012-01-17T17:08:02.840
3Hmmm... i like the first part of the answer... that it is an artifact from classful IP networks. My issue again with the second part is routing tables are used specifically to route to a network.
As I understand it, the routing table is only looked at to route to a network to which the receiver is not on (dest IP not part of your subnet/net). This being the case... when looking at a routing table it is clear the addresses in it are network addresses and not host addresses therefore seperating this from a host packet dest IP. In actual traffic, a dest IP of a net address is never used. – Goblinlord – 2012-01-17T18:27:30.990
1So... is there any reason to specifically reserve it if these 2 instances are already seperate (network address in routing table and dest IP when determining whether you need to look at a routing table). – Goblinlord – 2012-01-17T18:32:27.503
1@Goblinlord: No official reason that I could find (recent RFCs, etc.). However, so much software is built with the assumption that the network address is "special", that in practice you'd better not use it as a host IP address. – haimg – 2012-01-17T18:42:01.953
@haimg Good enough for me... I wasn't really considering using it... its just I have actually searched myself for the actual reasoning and could never find it. I will just go with... just an artifact of classful networks of the past. – Goblinlord – 2012-01-19T01:14:37.490
1There is a cisco config entry which allows the network address to also be a host, which has been around for at least 10 years... I never used it, or even tested it, and due to possible stack issues as mentioned, specifically didn't allow hosts to end in .0 or .255 on the networks for which I was responsible, though I hadn't come across other network or broadcast addresses in use for smaller than /24s, at @Home, and while CoreOS wanted to issue the middle .0 and .255 as hosts in sanbrunocable's /23's and /21s, I manually reserved them. – Nevin Williams – 2013-05-25T08:05:50.093