【发布时间】:2014-04-11 20:57:39
【问题描述】:
有没有一种简单的方法可以查看我的 Android 设备上打开了哪些端口以及关闭打开的端口的方法?
【问题讨论】:
有没有一种简单的方法可以查看我的 Android 设备上打开了哪些端口以及关闭打开的端口的方法?
【问题讨论】:
打开的 TCP 端口如下所示:
65531 关闭端口 PORT
国家服务
53/tcp 开放域
8187/tcp 打开未知
38647/tcp 打开未知
42761/tcp 打开
未知 MAC 地址:A4:9A:58:::**(三星电子公司)
【讨论】:
adb shell ip addr查看wlan0接口的地址,如果它在 Wifi 上。
您可以通过阅读文本 /proc 伪文件来确定当前打开的端口,例如
/proc/net/tcp
/proc/net/udp
这基本上是 netstat 命令(在哪里实现)所做的——您可能希望找到并检查一个简单的 netstat 实现的源代码(应该可以将其移植到 java)
但是,当以非特权应用程序用户 ID 运行时,您将只能关闭属于您自己的进程的套接字(或者通过涉及 ptrace 或进程终止的迂回方式,属于您的用户 ID 的其他进程)。另请注意,关闭套接字并不一定会使该端口可立即重用。
【讨论】:
您可以通过运行时尝试不同的网络命令并查看结果
// netstat -lptu
// netstat -vat
Process su = Runtime.getRuntime().exec("netstat -vat ");
【讨论】: