ec2 인스턴스가 열려 있는지보고 싶지만 기본적으로 Amazon ec2가 ping 요청을 차단합니다. 인스턴스의 보안 정책을 변경하여이 작업을 수행하는 방법이 있습니다. 이를 제외하고 "서버가 응답 성이 있는지 확인"하고 가장 가벼운 방법에 가장 가까운 대안은 무엇입니까?ping에 대한 대안
curl
은 좋은 옵션입니까?
ec2 인스턴스가 열려 있는지보고 싶지만 기본적으로 Amazon ec2가 ping 요청을 차단합니다. 인스턴스의 보안 정책을 변경하여이 작업을 수행하는 방법이 있습니다. 이를 제외하고 "서버가 응답 성이 있는지 확인"하고 가장 가벼운 방법에 가장 가까운 대안은 무엇입니까?ping에 대한 대안
curl
은 좋은 옵션입니까?
나는 curl
이 정확히 원하는 것이라고 생각합니다. 아무것도 잘못되면 잘 동작하는 유닉스 프로그램과 마찬가지로, 에러 코드를 반환 :
[[email protected] ~]$ curl www.no-such-website.com
[[email protected] ~]$ echo $?
6
은 또한 당신이 영원히 기다리지 않습니다 확인 --connect-timeout
를 사용할 수 있습니다.
서버가 가동 중이고 웹 서버 데몬이 다운 된 경우 CURL이 빠른 확인으로 작동하지 않습니다. 하나의 대안은 hping3
과 같은 도구를 사용하여 TCP ACK를 보내는 것입니다. RST를 받으면 서버는 UP 상태입니다. 당신이 무엇을 할 수 있는지
hping3 -c 1 -V -p 80 -s 5050 -A example.fqdn
는 서버가 다운뿐 아니라 웹 서버 데몬입니다 확인하는 두 번째 방법을 시도 첫번째 실패에 CURL 테스트를 시도합니다.
이 방법의 문제점은 이와 같은 표류하는 TCP 패킷이 중간 프록시에 의해 필터링 될 수 있다는 것입니다.
물론 작동합니다. 웹 서버 데몬이 다운되면이 상자는 TCP RST로 응답하거나 전혀 응답하지 않습니다 (시간 초과로 인해 잡히게됩니다). 여하튼, 지정된 시간에 응답이 없다면 '컬 (curl)'은 알 것이다. – cnicutar
그래, 그건 사실이야. hping3을 사용하여 RST를 얻는 것이 훨씬 빠르며 지수 SYN이 백 오프를 타임 아웃하도록 기다리는 것보다 빠릅니다. 곱슬 곱슬과 다양한 테스트 (존재하지 않는 호스트, 다운 호스트, 다운 포트 등)에 대한 hping 테스트를 비교하십시오. 일반적으로 더 빠릅니다. – jman
만약 당신이 그것에 ssh 수 있습니다. nc로 이것을 확인하는 간단한 방법은 다음과 같습니다. nc -zv 111.222.333.444 22 (인스턴스의 IP 주소로 111.222.333.444 바꾸기)
감사합니다. netcat과 ping의 차이점은 무엇입니까? 또한 위의 명령은 현재 형식으로 작동하지 않습니다. – David542
명령이 정상적으로 작동하고 게시하기 전에 테스트를 마쳤습니다. 어떤 오류가 발생합니까? –
감사합니다. 사용하겠습니다. 호기심에서 '6'은 오류 코드의 의미는 무엇입니까? – David542
@ David542 '컬 (curl)'에만 해당됩니다. 모든 프로그램은 반환 할 항목을 선택하며 거의 표준화되지 않았습니다. 정말로 관심이 있다면'sysexits.h '라는 헤더를 찾을 수 있습니다. 그러나 매뉴얼 페이지는 종료 코드를 설명합니다. – cnicutar
에서'curl' 맨 페이지 :'6 호스트를 해석 할 수 없습니다. 주어진 원격 호스트가 해결되지 않았습니다. " – dschulz