ping广播地址有问题

时间:2011-01-31 19:51:01

标签: networking broadcast ping icmp

当我尝试ping我的LAN上的广播地址时,它每次只显示来自3个主机的ICMP回复,即使有许多主机连接到LAN。

对于广播地址,我做了

$ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:1b:38:09:0b:26  
          inet addr:172.30.120.152  Bcast:172.30.127.255  Mask:255.255.248.0
          inet6 addr: fe80::21b:38ff:fe09:b26/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:831096 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13022 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:66620362 (66.6 MB)  TX bytes:3099025 (3.0 MB)
          Interrupt:21 Base address:0x2000 

我使用Bcast addr 172.30.127.255来ping每个人......

$ping -b 172.30.127.255
WARNING: pinging broadcast address
PING 172.30.127.255 (172.30.127.255) 56(84) bytes of data.
64 bytes from 172.30.120.1: icmp_seq=1 ttl=255 time=0.809 ms
64 bytes from 172.30.120.62: icmp_seq=1 ttl=64 time=1.06 ms (DUP!)
64 bytes from 172.30.120.50: icmp_seq=1 ttl=255 time=3.97 ms (DUP!)
64 bytes from 172.30.120.1: icmp_seq=2 ttl=255 time=0.364 ms
64 bytes from 172.30.120.62: icmp_seq=2 ttl=64 time=0.412 ms (DUP!)
64 bytes from 172.30.120.50: icmp_seq=2 ttl=255 time=1.48 ms (DUP!)
64 bytes from 172.30.120.1: icmp_seq=3 ttl=255 time=0.452 ms
64 bytes from 172.30.120.62: icmp_seq=3 ttl=64 time=0.506 ms (DUP!)
64 bytes from 172.30.120.50: icmp_seq=3 ttl=255 time=1.64 ms (DUP!)

为什么只有3台主机响应我的ping。 ifconfig给出的bcast地址不是要使用的地址吗? 我想这可能是我无法对局域网上的系统进行放大攻击的原因。我用我朋友主机的欺骗性源地址注入了ICMP-echo数据包 并将其发送到这个广播地址,并且看到他的带宽没有受到影响而感到失望......

请解释......

2 个答案:

答案 0 :(得分:7)

有些主机根本不响应广播ping(例如,默认情况下以这种方式配置Windows)。

答案 1 :(得分:2)

因为在示例中,某些实现通过将广播发送到首选接口而不是所有接口来工作。您需要一个中继发送到所有接口。您可以考虑阅读RFC 919