当我试图使用一个软件时,我得到了一个“主机无法访问”的错误。 我不知道他们使用哪个端口,也不知道他们想要达到的地址。 有没有一个或多或less简单的方法来解决这个问题?
我有一个叫wireshark的程序 – 但是数据很庞大。 有没有其他的方法来过滤数据,以获得一个良好的概述?
你在用Linux吗? 如果是这样,正如其他人提到的那样,您可以使用wireshark / tcpdump访问数据,并在使用该软件时过滤IP。
在服务器上,您可以尝试运行netstat或类似的程序,具体取决于您的操作系统,它会告诉您哪些端口正在被侦听。 使用手册页来查看是否有更多的选项(比如每个监听端口的程序命令行)可以帮助你缩小范围。
或者你可以暂时放下防火墙,然后在服务器上运行NMap,扫描所有的端口,看看什么是开放的。 或者如果您没有运行软件防火墙,请从防火墙后面进行扫描。 注意开放的端口和调查。
如果它在Linux(或某些Windows机器)上,可以查看configuration文件以查看是否有指定的端口。
最后,看看是否可以与该公司的任何前开发人员或该软件的其他客户联系,看看他们是否可以提供帮助; 如果你能find他们中的任何一个,也许他们知道其他客户,或者有一个支持论坛或其他pipe理员正在运行该软件,可以进入邮件列表互相帮助。
如果您有权访问防火墙日志,请查看它们。
如果不在文档中,您将不得不筛选Wireshark或Netmon转储。 这就是说,对神秘应用程序支持人员的快速调用应该可以解决您的问题。
在这种情况下联系软件的供应商/制造商似乎是一个明智的做法。
nestat -nab 1 (在Windows的情况下,在Linux的情况下更改一些参数) 有几个不同的select,从“简单和远射”到“肯定工作但乏味”。
你说networking跟踪是巨大的。 您是否尝试先closures所有不必要的程序和networking通信? 一个绝对的方法是使用虚拟机来启动程序。 这使得您可以更轻松地追踪其活动,因为它仅限于特定的IP。
如果真的很难find正确的networking活动,请附上一个debugging器并在程序上进行跟踪。 您可以过滤掉像WinSock这样的知名应用程序库的调用,甚至可以在显示“主机不可访问”错误对话框时设置断点。 然而,这是非常乏味的,需要一些逆向工程巫术。
如果你有源代码,grep它的单词套接字 。 当你find它的时候,端口将会在这行代码的周围。