Linux通过dev伪设备判断端口是否可用


上班久了,总有会遇到一些奇奇怪怪的问题。

问:有一台内部网络,没有互联网的Linux计算机,计算机中没有安装telnet、nc、ssh、curl、wget,且没有内网软件源。现在想用这台计算机判断网络中,一台IP地址为10.8.7.29的计算机的TCP 1314端口是否可用。请问阁下该如何应对?

对于这个问题,我想说的是,我解决不了问题,但是我可以把提出问题的人解决了。说笑归说笑,但是这个问题还真就遇到了。最后经人指点解决了。

其人曰:使用Linux的伪设备可以判断端口是否开放。

我:用伪设备?测试端口??

其人曰:echo > /dev/tcp/10.8.7.29/1314即可。

shell执行的结果如下:

连接失败,找个肯定通的端口试试。shell执行结果如下:

端口如果是开放的,则不会有任何输出。

总结一下:echo > /dev/[tcp | udp]/[Host]/[Port]可以在极端情况简单测试端口是否可用。