nmap 使用 ping 扫描未找到活动主机

nmap 使用 ping 扫描未找到活动主机

我尝试使用 nmap 对我的本地网络进行 ping 扫描,但似乎找不到肯定活着的机器。它对 ping 做出响应,但继续进行 ping 扫描。

ping 的结果:

$ ping 192.168.0.2
PING 192.168.0.2 (192.168.0.2): 56 data bytes 64 bytes from 192.168.0.2: icmp_seq=0 ttl=64 time=1.585 ms

tcpdump 的输出如下:

$ tcpdump -i fxp0 -n host 192.168.0.2
12:43:07.624911 IP 192.168.0.222 > 192.168.0.2: ICMP echo request, id 61023, seq 0, length 64
12:43:07.625029 IP 192.168.0.2 > 192.168.0.222: ICMP echo reply, id 61023, seq 0, length 64

但是当我尝试使用 nmap 时,尽管收到了响应,却看不到它。

$ nmap -sn 192.168.0.2

Starting Nmap 5.61TEST5 ( http://nmap.org ) at 2012-05-13 12:44 CEST
Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn
Nmap done: 1 IP address (0 hosts up) scanned in 3.02 seconds

Tcpdump 输出:

$ tcpdump -i fxp0 -n host 192.168.0.2
12:45:30.742933 IP 192.168.0.222 > 192.168.0.2: ICMP echo request, id 2715, seq 0, length 8
12:45:30.742974 IP 192.168.0.222.36388 > 192.168.0.2.443: S 3607279099:3607279099(0) win 1024 <mss 1460>
12:45:30.743001 IP 192.168.0.222.36388 > 192.168.0.2.80: . ack 3607279099 win 1024
12:45:30.743025 IP 192.168.0.222 > 192.168.0.2: ICMP time stamp query id 45449 seq 0, length 20
12:45:30.743061 IP 192.168.0.2 > 192.168.0.222: ICMP echo reply, id 2715, seq 0, length 8
12:45:30.743097 IP 192.168.0.2.443 > 192.168.0.222.36388: S 2602942480:2602942480(0) ack 3607279100 win 5840 <mss 1460>
12:45:30.743130 IP 192.168.0.222.36388 > 192.168.0.2.443: R 3607279100:3607279100(0) win 0
12:45:30.743134 IP 192.168.0.2.80 > 192.168.0.222.36388: R 3607279099:3607279099(0) win 0
12:45:30.743148 IP 192.168.0.2 > 192.168.0.222: ICMP time stamp reply id 45449 seq 0: org 00:00:00.000, recv 11:04:04.243, xmit 11:04:04.243, length 20
12:45:32.745245 IP 192.168.0.222 > 192.168.0.2: ICMP time stamp query id 48722 seq 0, length 20
12:45:32.745281 IP 192.168.0.222.36389 > 192.168.0.2.80: . ack 3607344634 win 1024
12:45:32.745307 IP 192.168.0.222.36389 > 192.168.0.2.443: S 3607344634:3607344634(0) win 1024 <mss 1460>
12:45:32.745340 IP 192.168.0.2 > 192.168.0.222: ICMP time stamp reply id 48722 seq 0: org 00:00:00.000, recv 11:04:06.245, xmit 11:04:06.245, length 20
12:45:32.745380 IP 192.168.0.2.80 > 192.168.0.222.36389: R 3607344634:3607344634(0) win 0
12:45:32.745401 IP 192.168.0.2.443 > 192.168.0.222.36389: S 2629695507:2629695507(0) ack 3607344635 win 5840 <mss 1460>
12:45:32.745421 IP 192.168.0.222.36389 > 192.168.0.2.443: R 3607344635:3607344635(0) win 0
12:45:32.745431 IP 192.168.0.222 > 192.168.0.2: ICMP echo request, id 38289, seq 0, length 8
12:45:32.745517 IP 192.168.0.2 > 192.168.0.222: ICMP echo reply, id 38289, seq 0, length 8

为什么 nmap 说主机似乎已关闭何时响应请求?

编辑

Nmap版本:

$ nmap --version

Nmap version 5.61TEST5 ( http://nmap.org )
Platform: i386-portbld-freebsd7.4
Compiled with: liblua-5.1.5 openssl-0.9.8q libpcre-8.30 libpcap-0.9.8 nmap-libdnet-1.12 ipv6
Compiled without:

可以肯定的是,防火墙中的第一个过滤规则是:

pass quick on fxp0

答案1

刚刚用我的 OpenBSD 5.1 尝试了此操作。是的,您使用的是 FreeBSD 7.4,但我们谈论的是一个相当相似的怪物。

作为普通用户,我也会nmap -sn my.host返回Host seems down,尽管我的测试机器肯定会以普通用户的身份响应 ping。

但是,作为 root,它却按应有的方式nmap -sn my.host返回。Host is up

查看您的提示,您可能还尝试以非 root 用户身份执行 nmap。请尝试 nmap 是否能以 root 用户身份运行。

编辑:刚刚启动了我的 FreeBSD 9.0,nmap ping 扫描在非 root 模式下也能正常工作。

答案2

我的第一个观察是,它tcpdump -i fxp0正在转储到达的数据包fxp0,但是nmap它作为用户空间进程运行,因此许多因素可能会阻止 nmap 查看响应。

  1. 例如 netfilter 规则(用户iptables -t filter -n -L
  2. selinux(没有见过这种事情,但当愚蠢的事情发生时,selinux 总是一个很好的选择
  3. 还要检查 iptables nat 表以确保iptables -t nat -n -L

答案3

我刚刚遇到了同样的问题,并在部分帮助下解决了它。

我设置了一个带有 WiFi 加密狗的新型无头 RaspberryPi,并编辑了 SD 卡以将我的 WiFi 凭据放入 wpa_supplicant.conf 中。

RPi 启动正常并连接到 WiFi,但我的 Ubuntu 笔记本电脑上的 nmap ping 扫描没有找到它,直到我做了两件事:

  1. 用过的sudo
  2. 添加了选项--disable-arp-ping

答案4

我在试图弄清楚为什么我可以 ping 通 Windows 主机,但当我使用 nmap -sP 时,它会显示为主机关闭时偶然发现了这篇文章。到目前为止,这种行为似乎在 Windows 和 Palo Alto 上重现,但在 Linux 和 iDrac 上没有重现;我的情况的解决办法是使用 sudo 重新运行扫描。

相关内容