肯定是SF的问题,但我们现在就去。从开发盒本身(命令行),您应该能够看到正在使用与netstat工具。
要查看侦听端口UDP和TCP的名单,完成与程序名称:
# preferably as root
netstat --listening --program --numeric-ports --protocol=ip -6 -4
从另一台机器,可以使用nmap或类似的工具来查看哪些端口是开放/倾听扫描分配给开发盒的IP地址。在尝试之前,也许你应该征求许可。另外,你应该考虑到有问题的盒子可能有适当的防火墙规则,可以阻止你的扫描尝试。
要了解规则是什么防火墙发生在开发框尝试:
# as root
iptables -nvxL -t filter
# maybe there are NAT rules, redirects to other addresses, etc.
iptables -nvxL -t nat
要看看这些iptables选项,请尝试man iptables。
举个例子,假设172.16.0.1是分配给开发中的IP地址,运行在可能的最简单的方法nmap:
# preferably as root
nmap -v 172.16.0.1
在几分钟内,你应该看到的端口/服务收听列表在那个相关的盒子里。 尝试man nmap并阅读文档以获取更多详细信息。
如果你真的认为这是一个编程问题,您可以使用netcat工具和程序一个简单的脚本做一些大致相当于什么呢nmap。
#!/bin/bash
#
# DISCLAIMER: NOT TESTED -- just an example
# NOTE: This will take many DAYS to complete
HOST=172.16.0.1
for port in `seq 1 65535`
do
echo "Trying ${port}..."
netcat -vvv ${HOST} $port -w 1 -z
done
对于每一个开放的TCP端口,你应该会看到类似这样的一行:
Connection to 172.16.0.1 23 port [tcp/telnet] succeeded!