我怎么知道我的Android设备上打开了哪些端口以及如何关闭它们?

QnA*_*A_J 11 android ports

有没有一种简单的方法,看看我的Android设备上打开了哪些端口以及关闭开放端口的方法?

abo*_*ane 9

  1. 在手机上创建一个wifi热点
  2. 将计算机连接到热点
  3. 使用ipconfig或ifconfig来了解网关IP地址(即:您手机的IP地址)
  4. 下载nmap:http://nmap.org/
  5. 使用nmap命令:nmap -sS -Pn -p- your_phone_ip_adress

打开的TCP端口将显示如下:


65531个封闭的端口PORT
STATE SERVICE
53/TCP开域
8187/TCP打开未知
38647/TCP打开未知
42761/TCP开放未知MAC地址:A4:9A:58: ::**(三星电子)


  • PS:对于UDP端口,请使用:nmap -sU -Pn -p- your_phone_ip_adress


Chr*_*ton 5

您可以通过读取文本 /proc 伪文件来确定当前打开的端口,例如

/proc/net/tcp
/proc/net/udp
Run Code Online (Sandbox Code Playgroud)

这基本上就是 netstat 命令(在实现的地方)所做的 - 您可能希望找到并检查简单的 netstat 实现的源代码(应该可以将其移植到 java)

但是,当作为非特权应用程序用户 ID 运行时,您将只能关闭属于您自己的进程的套接字(或者通过涉及 ptrace 或进程终止的迂回方式,属于您的用户 ID 的其他进程)。另请注意,关闭套接字并不一定会使该端口可立即重新使用。