por que não transmite o trabalho de ping?

3

Eu tenho o Freebsd como roteador.
Rede local está na interface sk0: inet 10.254.239.1 netmask 0xffffff00 broadcast 10.254.239.255
Na minha rede local eu tenho um computador (windows 7) que obtém seu ip (10.254.239.2) do servidor DHCP no Freebsd.

  • Ping para o endereço exato 10.254.239.2 funciona bem.

Quando eu tento ping bradcast 10.254.239.255 do próprio Freebsd nada acontece:

--- 10.254.239.255 ping statistics ---
3 packets transmitted, 0 packets received, 100.0% packet loss
  • #arp -a diz:
    ...
    ? (10.254.239.255) em (incompleto) em sk0 expirou [ethernet]
    ...

  • O firewall permite que todos nessa interface

Onde procurar? O que fazer para que a transmissão funcione?

    
por Sergey 26.09.2011 / 10:07

3 respostas

7

Se você deseja executar a descoberta de host, não use pings de transmissão, basta executar ping em cada permutação possível para uma determinada sub-rede. Parece pesado, mas na verdade leva alguns segundos (os colchetes são importantes):

$ time ( s=192.168.0 ; for i in $(seq 1 254) ; do ( ping -n -c 1 -w 1 $s.$i 1>/dev/null 2>&1 && printf "%-16s %s\n" $s.$i responded ) & done ; wait ; echo )
192.168.0.5      responded
192.168.0.11     responded
192.168.0.2      responded
192.168.0.254    responded
192.168.0.4      responded

real    0m1.317s
user    0m0.004s
sys 0m0.084s
    
por 12.10.2012 / 22:07
7

A maioria dos sistemas operacionais simplesmente ignora os pings ICMP de transmissão por padrão, por motivos de segurança. Você não "faça funcionar", e isso não tem efeito em outros tipos de transmissões.

No FreeBSD, o net.inet.icmp.bmcastecho sysctl alterna esse recurso.

    
por 26.09.2011 / 10:13
0

Eu sei que esta pergunta é muito antiga, mas é um dos principais resultados quando pesquisando 'ubuntu broadcast ping'.

Eu gostaria de acrescentar que você pode enviar solicitações de ping de difusão (ICMP echo-requests) muito facilmente a partir de um host Linux, com a opção -b . A Microsoft, por algum motivo, não permite isso.

Aqui está um ping enviado de um host Ubuntu:

ping -b 192.168.1.255
WARNING: pinging broadcast address
PING 192.168.1.255 (192.168.1.255) 56(84) bytes of data.
64 bytes from 192.168.1.247: icmp_seq=1 ttl=64 time=0.031 ms
64 bytes from 192.168.1.254: icmp_seq=1 ttl=64 time=0.960 ms (DUP!)
64 bytes from 192.168.1.202: icmp_seq=1 ttl=64 time=92.3 ms (DUP!)

Observe a opção -b para permitir a transmissão. Como você pode ver, vários hosts da minha rede responderam, incluindo um switch Cisco, meu próprio host Ubuntu e um laptop Apple.

E sim, como outros já disseram antes, os pings transmitidos são terríveis para escanear uma rede. Alguns hosts simplesmente ignoram os pedidos de eco. Existem ferramentas muito melhores para este propósito (por exemplo, nmap).

    
por 09.01.2018 / 16:09