Cygwin에서 Linux 핑 사용


8

pingCygwin의 기본 패키지 또는 Windows ping 유틸리티가 작동하지 않는 일반적인 Linux 구문으로 명령 을 사용하는 스크립트로 작업해야합니다 . 지금은 Windows 버전을 사용하도록 스크립트를 패치했습니다 (어려운 어려움; Windows 실행 파일은 유용한 반환 코드를 제공하지 않으므로 출력을 구문 분석해야합니다). Linux ping의 상자 호환성 및 추가 기능 . 더 나아 가기 전에 관리자 모드에서 Cygwin을 실행하고 있다고 진술하겠습니다. 특권 문제가 아닙니다. 버전 문제입니다.

Cygwin의 기본 ping명령은 'ping : IP 네트워크 연결을 테스트하는 기본 네트워크 도구'패키지의 설정 관리자에서 버전 '1.0-1'로 표시됩니다. 인수가 없으면 다음을 출력합니다.

Usage:  ping [-dfqrv] host [packetsize [count [preload]]]

매뉴얼 페이지 설명은 "DARPA 인터넷은 크고 복잡한 네트워크 하드웨어 집합" 으로 시작합니다. 이 버전은에 설치된 버전입니다 /bin/ping.

Windows ping명령은에 있으며 $SYSTEMROOT/system32/ping매개 변수없이 호출 할 때 다음 메시지를 출력합니다.

Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
        [-r count] [-s count] [[-j host-list] | [-k host-list]]
        [-w timeout] target_name

이것은 확실히 더 풍부한 기능을 갖춘 핑 (특히, 시간 초과를 포함하여 나에게 중요 함)이지만 최신 Linux 설치에서는 사용할 수있는 버전이 아닙니다.

ping [ -LRUbdfnqrvVaAB] [ -c count] [ -i interval] [ -l preload] [ -p pattern] 
     [ -s packetsize] [ -t ttl] [ -w deadline] [ -F flowlabel] [ -I interface] 
     [ -M hint] [ -Q tos] [ -S sndbuf] [ -T timestamp option] [ -W timeout] 
     [ hop ...] destination

여기에 온라인으로 문서화되어 있습니다 . Cygwin을 제외하고 cygwin 버전의 ping에 대한 참조를 찾을 수없는 것 같습니다.

핑없이 Cygwin의 초기 버전을 설명하는 이 고대 이메일 스레드 를 발견 했습니다 . Windows 용으로 설계된 iputils 버전을 찾지 못했습니다.

답변:


3

당신은 할 수

  • 소스에서 ping을 빌드하려고 시도하면 iputils 패키지 의 일부입니다 . 그러나 cygwin에 물건을 만드는 것은 상당히 번거로울 수 있습니다.

또는 (그리고 나는 이것을 먼저 시도 할 것입니다)


고맙게도, 원하는 요구 사항 중 하나가 iputils 버전의 구문을 가지고 있기 때문에 첫 번째 옵션이 더 잘 작동하는 것처럼 보이므로 다른 핑 구현을 시도해도 도움이되지 않습니다. 즉, 내가 이것을 처음 접했다고 의심하기 때문에 누군가 이미 시도한 경우를 기다릴 것입니다.
— Kevin Vermeer

그런데, iputils는 거의 2 년 안에 태그를 공개하지 않았지만, git 저장소에서 IPv6을 지원하기위한 개발이 약간있었습니다. ipv6.org / gitroot / iputils.git`. 누군가에게 도움이되기를 바랍니다. 이 작업을 마치면 패치를 게시 할 것입니다. 할 일이 상당히 많지만 극복 할 수없는 것 같습니다.
— Kevin Vermeer

1
Cygwin 용 iputils를 구축 할 수있는 곳이라면 Cygwin 커뮤니티의 나머지 사람들도이 프로그램에 관심이있는 것 같습니다.
— me_and

@me_and-성공하면 확실히 릴리스 할 것입니다. 그러나 처음 몇 개의 파일은 단순히 등으로 변경 #include <linux/filename.h>하여 잘 컴파일되었지만 #include <cygwin/filename.h>나중에 Cygwin 소켓 드라이버에는 iputils에 필요한 기능이 부족하다는 것을 알았습니다. Cygwin 용 iputils를 구축하는 것만이 아니라 iputils와 함께 작동하도록 Cygwin을 구축하는 것도 중요합니다. 여유 시간이 있으면 나중에 다시 설명하겠습니다.
— Kevin Vermeer
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.