我正在使用一款应用程序,它通过wifi使用8000和9987端口与android设备对话。它在除了我的Google TV之外的任何东西上都能工作得很好。
以下是我尝试使用Java控制台时得到的部分内容
...
Connecting to: http://192.168.2.9:8000/_version?version=71
It did not work.java.net.ConnectException: Connection refused: connect
java.net.ConnectException: Connection refused: connect
...
仅在Bash中,如何检索两个保证可用的开放端口号,就像在其他语言(Perl或Python)中通过绑定到端口0所做的那样?我的操作系统是Ubuntu16.04LTS。
我见过perl和python示例,但是如果不使用单独的语言,就无法工作。
我的最终目标是替换以下不可靠的脚本,这样我就可以将结果分配给变量,并在脚本的后面使用它们。
count=0;
for i in {11212..12655}
do
netstat -ntpl | grep [0-9]:${1:-$i} -q ;
if [ $? -eq 1 ]; then
aLen=${#PORTS[@]};
我对以下命令的理解:
tcpdump -i any -nn port X
tcpdump ->启动服务以捕获数据包。
-i any -> On any/all接口(S)。
-nn ->不将主机地址转换为名称(避免DNS查找),也不转换协议和端口号。
port X ->将此规则应用于端口X
假设上面的命令是正确的,我觉得这个命令意味着端口(进程的逻辑端点)X可以使用它可以使用的任何接口,以便与另一个进程/设备等进行通信。这个tcp转储将捕获所有这些可用接口上的所有数据包。
有什么方法可以查看给定端口(命令)可用的所有可用接口列表吗?