当我在没有 sudo 的情况下使用 nmap 时,它显示端口已打开为
nmap 192.168.1.5
Host is up (0.00091s latency).
Not shown: 995 filtered ports
PORT STATE SERVICE
80/tcp open http
110/tcp open pop3
143/tcp open imap
993/tcp open imaps
995/tcp open pop3s
Nmap done: 1 IP address (1 host up) scanned in 7.52 seconds
但是当我在命令之前使用 sudo 时它会告诉我
sudo nmap 192.168.1.5
Nmap scan report for 192.168.1.5
Host is up (0.00025s latency).
All 1000 scanned ports on 192.168.1.5 are filtered
MAC Address: 08:00:27:02:14:55 (Oracle VirtualBox virtual NIC)
Nmap done: 1 IP address (1 host up) scanned in 29.23 seconds
所以我的问题是为什么结果改变了以及为什么我无法在没有 sudo 的情况下获得 mac
我的主机是macos
答案1
nmap
应该如果目标主机与您的计算机位于同一网络上,则显示 MAC 地址,但需要 root 权限才能在更远程的目标上执行相同操作(我不会让它在本地工作,但我不会确保我的网络满足要求,或者如果是旧信息)。
一般来说,nmap
需要 root 访问权限才能使用原始 TCP 数据包,这就是为什么在 下运行它sudo
会产生与不在 下运行时不同的结果sudo
。