Are you talking about specific routes in a specific network setup...
IE.Can 10.10.0.2 route to 10.0.5.2?
or are you asking about completely non routeable IP... like 127.0.0.1 on a local lan, or how Private IP addresses (like 192.168.0.2) can't be routed to the internet...???
I understand some of it.. and some.. i'm not so clear. But I'm not sure what is being asked.
All IP addresses are routable; as long as you have two unicast IP addresses that are on different IP networks (which is where the subnet mask comes in), then you can make a router route between them. (I carefully said 'unicast' because multicasts can be a little different but that's a digression). Having said that, there are a few IP address ranges that are not routable across the intenet - not because those addresses are some how not routable, but because by common agreement it was considered desirable to have some 'private' IP address ranges that you can use internally without fear of them being accessible to the world. If you're using your own private isolated network however you can route between these private addresses without any problem
So in reality there is a very small number of "NON-Routable" ip addresses, which are not routeable because the IP or range is reserved? Correct?
And when we say "Non routable" we should be saying "non internet routeable"? And there is no "hard" restriction on this, just a software/protocol level decision to omit routes for them. Is that decision made on each router or is it built into the routing protocol?
IE: BGP won't let you route, specifically or by default a 192.168.0.0 network?
That's right. And the non-routable addresses are non-routable because that was the design decision taken when the internet was "invented", see RFC1818:
. Exactly how the blocking is done I'm not sure - but I'm certain someone out there will shortly tell us...