在 Windows 中,我转到命令行和“telnet”来检查端口。如何在 Unix 中做同样的事情?
似乎有些人使用 'tcpdump port ' 命令。这是在监控实时流量吗?谢谢。
Dav*_*ett 10
nmap
是一个很好的通用工具,可以处理这些事情以及其他很多事情。
nmap host.domain.tld
(或nmap host
对于本地机器,或nmap <ipaddr>
按地址而不是名称检查机器)将列出打开的公共端口。
nmap 192.168.23.1-254 -p 22,80,443
将按地址扫描一系列主机,以查看通常与 SSH、HTTP 和 HTTPS 关联的 TCP 端口是否打开。
查看man nmap
更多选项 - 它是网络检查工具的厨房水槽。
您目前可能没有安装 nmap,但它几乎在所有发行版标准存储库中。要aptitude install nmap
安装debian 或 ubuntu 变体,或在您选择的 GUI 包管理器中找到它。如果它在您的系统上不容易获得,请从http://nmap.org/获取它和更多信息
您也可以使用telnet
您已经熟悉的相同客户端技术,因为它也可用并且通常安装在一个默认软件包中,但这nmap
是一个值得了解的工具,因为它有助于诊断网络问题,只需检查事情应该是这样的,等等。它还有一些不错的图形前端,如果您希望远离命令行与它进行交互。
如果您使用的是 bash,那么手册页会说明您可以写入 /dev/tcp/HostNameOrIP/port。我已经使用了几次,如果远程端口打开,则没有响应。如果系统无法连接到远程端口,则说明原因
[kevin@box ~]$ echo -n > /dev/tcp/www.yahoo.com/80
[kevin@box ~]$ nslookup www.no-such-domain.com
Server: 127.0.0.1
Address: 127.0.0.1#53
** server can't find www.no-such-domain.com: NXDOMAIN
[kevin@box ~]$ echo -n > /dev/tcp/www.no-such-domain.com/80
-bash: www.no-such-domain.com: Name or service not known
-bash: /dev/tcp/www.no-such-domain.com/80: Invalid argument
[kevin@box ~]$ echo -n > /dev/tcp/192.168.3.3/80 #no such server on my network
-bash: connect: No route to host
-bash: /dev/tcp/192.168.3.3/80: No route to host
[kevin@box ~]$ echo -n > /dev/tcp/192.168.3.1/88 #nothing listening on port 88
-bash: connect: Connection refused
-bash: /dev/tcp/192.168.3.1/88: Connection refused
[kevin@box ~]$
Run Code Online (Sandbox Code Playgroud)