我正在使用Ubuntu16.04,但我相信我的问题适用于许多发行版,如Debian、CentOS和Red。
netstat -l的手册是:
Show only listening sockets. (These are omitted by default.)
netstat -a是:
Show both listening and non-listening sockets. With the --
interfaces option, show interfaces that are not up
netstat -a的输出是否包括nestat -l的输出?在主页上似乎是这样的,但
我的绑定DNS服务器配置为侦听TCP端口53。是否有任何方法将服务器设置为侦听UDP而不是TCP?netstat命令的输出是:
root@ns1:/# netstat -lntu
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.163.172:53 0.0.0.0:* LISTEN
tcp
当我检查当前端口是否正在使用时,删除netstat命令的输出时遇到了问题。我不需要命令的输出,只需要错误代码。
运行netstat -anp | grep 1521 &>/dev/null会导致
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
显示为输出。我也尝试过:
2>/dev/null| cut -d' ' -f45-50 | sed 's/[^
帮助我跟踪特定端口的状态:"LISTENING“、"CLOSE_WAIT”、"ESTABLISHED“。我有一个使用netstat命令的模拟解决方案:
local command = 'netstat -anp tcp | find ":1926 " '
local h = io.popen(command,"rb")
local result = h:read("*a")
h:close()
print(result)
if result:find("ESTABLISHED") then
我尝试使用nmap将端口扫描到同一LAN中的一台服务器,但我打开了许多端口:
Host is up (0.058s latency).
Not shown: 993 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
110/tcp open pop3
143/tcp open imap
993/tcp open imaps
995/tcp open pop3s
3306/tcp open mysql
因此,我登录到服务器查看正在侦听的服务,但它们只有很少几个:
netstat -plnt
Active Intern