Actually this question was already answered here:
Why isn't there a route for localhost in Ubuntu?
In short, linux have several types of routing tables. The one you see when you type
ip ro show
is the 'main' table, used for external connections. Before that you have the routing table 'local'. In order to see it, type:
ip ro show table local
broadcast 127.0.0.0 dev lo proto kernel scope link src 127.0.0.1
local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1
broadcast 192.168.0.0 dev eth0 proto kernel scope link src 192.168.1.27
local 192.168.1.27 dev eth0 proto kernel scope host src 192.168.1.27
broadcast 192.168.1.255 dev eth0 proto kernel scope link src 192.168.1.27
There are your local IPs and if the IP can be found in the local table it isn't supposed to be routed outside the node.