Vpn

通過 VPN 隧道的 Nmap ping 掃描返回所有主機都還活著?

  • January 27, 2017

我很好奇為什麼nmap -sP在通過 Cisco 站點到站點 IPSec 隧道連結的遠端子網上執行(ping 掃描)會為範圍內的每個 IP 返回“主機啟動”狀態。

[root@xt ~]# nmap -sP 192.168.108.*
Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2012-11-22 14:08 CST
Host 192.168.108.0 appears to be up.
Host 192.168.108.1 appears to be up.
Host 192.168.108.2 appears to be up.
Host 192.168.108.3 appears to be up.
Host 192.168.108.4 appears to be up.
Host 192.168.108.5 appears to be up.
.
.
.
Host 192.168.108.252 appears to be up.
Host 192.168.108.253 appears to be up.
Host 192.168.108.254 appears to be up.
Host 192.168.108.255 appears to be up.
Nmap finished: 256 IP addresses (256 hosts up) scanned in 14.830 seconds

但是,對已知 IP 的 ping 只會超時或不返回任何內容……

[root@xt ~]# ping 192.168.108.201
PING 192.168.108.201 (192.168.108.201) 56(84) bytes of data.

--- 192.168.108.201 ping statistics ---
144 packets transmitted, 0 received, 100% packet loss, time 143001ms

有沒有更有效的方法來掃描以這種方式連接的實時設備?

可能是 TCP RST。nmap 手冊(v 5.00)的摘錄:

-sP 選項預設發送 ICMP 回應要求、TCP SYN 到埠 443、TCP ACK 到埠 80 和 ICMP 時間戳請求。當由非特權使用者執行時,只會將 SYN 數據包發送(使用連接呼叫)到目標上的埠 80 和 443。當特權使用者嘗試掃描本地乙太網上的目標時,除非指定了 –send-ip,否則將使用 ARP 請求。-sP 選項可以與任何發現探測類型(-P* 選項,不包括 -PN)結合使用,以獲得更大的靈活性。如果使用了這些探測類型和埠號選項中的任何一個,則會覆蓋預設探測。當執行 Nmap 的源主機和目標網路之間有嚴格的防火牆時,建議使用這些高級技術。否則,當防火牆丟棄探測或其響應時,主機可能會失去。

如此處所示:

# nmap -sP 10.99.10.19
Host 10.99.10.19 is up (0.0015s latency).
21:31:13.338418 IP (tos 0x0, ttl 51, id 28548, offset 0, flags [none], proto ICMP (1), length 28)
   10.0.0.20 > 10.99.10.19: ICMP echo request, id 57832, seq 0, length 8
21:31:13.338625 IP (tos 0x0, ttl 50, id 7277, offset 0, flags [none], proto TCP (6), length 44)
   10.0.0.20.63105 > 10.99.10.19.443: Flags [S], cksum 0xe71d (correct), seq 4106918263, win 3072, options [mss 1460], length 0
21:31:13.338780 IP (tos 0x0, ttl 52, id 11356, offset 0, flags [none], proto TCP (6), length 40)
   10.0.0.20.63105 > 10.99.10.19.80: Flags [.], cksum 0x3276 (correct), seq 4106918263, ack 774547350, win 1024, length 0
21:31:13.339771 IP (tos 0x0, ttl 55, id 35529, offset 0, flags [none], proto ICMP (1), length 40)
   10.0.0.20 > 10.99.10.19: ICMP time stamp query id 23697 seq 0, length 20
21:31:13.340590 IP (tos 0x0, ttl 255, id 63189, offset 0, flags [none], proto TCP (6), length 40)
   10.99.10.19.80 > 10.0.0.20.63105: Flags [R.], cksum 0x3272 (correct), seq 1, ack 0, win 1024, length 0

就我而言,我在本地有一對 Cisco ASA,並在遠端端執行 Linux 和 strongswan。這可能是遠端端,因為隧道上的 rtt 平均約為 7-9 毫秒。我看到對方發出了 arp who-has,但這是我在沒有解密遠端 ipsec 對等數據包的情況下得到的。

引用自:https://serverfault.com/questions/451347