What does "On-link" mean on the result of "route print" command?

Solution 1:

They are addresses that can be resolved locally. They don't need a gateway because they don't need to be routed.

Solution 2:

Yep, the other three answers are correct: it's just a route that's directly reachable (the NIC is in direct contact with it; on the same subnet). To explain a little further though: by contrast, the routes that have a gateway IP listed must be contacted through that gateway.

So, in the table you gave above, 192.168.1.255 is contacted by simply putting a packet on the network from 192.168.1.5, marked as going to 192.168.1.255. The destination machine would see the packet, and take it off the network directly.

But to reach 137.132.0.0, the packet would be sent out from 172.18.180.10, to the gateway 172.18.180.1, where the gateway would see that it's to be forwarded on to where it's going.

Note that I haven't bothered looking at the whole routing table to make sure there are no more specific routes overriding these, as it's a little beside the point for this issue.

Solution 3:

on-link is a vista thing and it means there is a direct connection meaning “directly reachable”. In general, such record will be generated after establishing a dial-up connection.

Solution 4:

Wild guess: Unrouted subnets that are handled locally.