
I came across this amazing way of testing if I could reach a port on the host, when literally nothing I tried was available:
vagrant@ ~ () $ echo hi | nc -l -p 8089 & [1] 13651 vagrant@ ~ () $ cat < /dev/tcp/127.0.0.1/8089 hi [1]+ Done echo hi | nc -l -p 8089 vagrant@ ~ () $ vagrant@ ~ () $ cat < /dev/tcp/127.0.0.1/8089 -bash: connect: Connection refused -bash: /dev/tcp/127.0.0.1/8089: Connection refused
Yes, it is just cat, you can also use echo etc, basically reading directly from opened TCP socket.
So above, we run nc to listen on port 8089 and send hi when something connected to it.
Then we open socket with cat we simply get the response!