Long answer: Unreachable means they don't allow incoming connections. Now, what does that mean. Bitcoin Core, by default, allows up to 125 connections to different peers 10 of which are outbound. The non-listening nodes (those that only accept outbound connections) can establish up to 8 full-relay connections with up to 8 listening nodes (the ones that do accept incoming connections).
Both non-listening and listening nodes contribute to the network by sharing data, but they each have different traffic consumption. For instance, a non-listening node will communicate with only 8 listening nodes while listening nodes can have up to 115 incoming connections.
They all validate blocks normally. They all share blocks with each other. Running a listening node is just a greater contribution to the network bandwidth-wise.