ping이 작동하는데 왜 "ping -l"이 작동하지 않습니까?

ping이 작동하는데 왜 "ping -l"이 작동하지 않습니까?

핑할 수 있어

ping AddressIp
64 bytes from indirizzoIp: icmp_req=1 ttl=42 time=149 ms

하지만 추가 매개변수가 있습니다.

ping AddressIp -l 1400 
ping: cannot set preload to value > 3

ping AddressIp -t -l 1400
ping: can't set unicast time-to-live: Invalid argument

왜 핑을 할 수 없나요?

답변1

ping AddressIp -l 1400 
ping: cannot set preload to value > 3

ping3보다 큰 값을 사용하여 이 기능에 액세스하려면 수퍼유저 권한이 필요합니다 .

노력하다:

sudo ping AddressIp -l 1400

고쳐 쓰다:

패킷에 "크기" 옵션을 제공하시겠습니까 ping? Windows에서는 이 옵션이 "패킷 크기"를 의미한다고 생각 -l하지만 Linux에는 또 다른 옵션이 있습니다.

옵션을 시도해 보세요 -s:

sudo ping  AddressIp  -s 1000 -l 1400

데베니에

Linux에서는 ping중지할 때까지 계속되므로 Windows 옵션이 필요하지 않습니다 -t.

답변2

에서 ping's manpage:

-l preload
       If  preload is specified, ping sends that many packets not waiting 
       for reply.  Only the super-user may select preload more than 3.

-p pattern
       You may specify up to 16 ``pad'' bytes to fill  out  the  packet
       you send.  This is useful for diagnosing data-dependent problems
       in a network.  For example, -p ff will cause the sent packet  to
       be filled with all ones.

따라서 반드시 슈퍼유저로 ping을 실행하고 -p매개변수 옵션을 제공해야 합니다.

관련 정보