파이썬 핑
- 
          
            subprocess.call()메소드를 사용하여 Python에서 서버 핑
- 
          
            os.system()메소드를 사용하여 Python에서 서버 핑
- 
          
            ping3.ping()함수를 사용하는 Python의 Ping 서버
 
이 튜토리얼은 Python에서 ICMP (Internet Control Message Protocol)를 사용하여 서버를 ping하는 다양한 방법을 설명합니다. Ping은 인터넷 프로토콜에서 특정 서버를 사용할 수 있는지 여부를 확인하는 데 사용됩니다. 메시지가 대상 (서버)에 도달하고 서버 응답이 소스에 도달하는 데 걸리는 시간을 측정합니다.
subprocess.call()메소드를 사용하여 Python에서 서버 핑
    
subprocess.call(command)메소드는command를 입력으로 받아 실행합니다. 명령이 성공적으로 실행되면0을 반환합니다.
서버를 ping하는 명령은 Unix의 경우ping -c 1 host_address, Windows의 경우ping -n 1 host_address입니다. 여기서1은 패킷 수이고host_address는 ping하려는 서버 주소입니다.
먼저platform.system()메소드를 사용하여 머신의 OS를 확인한 다음 그에 따라 명령을 실행할 수 있습니다. 아래 예제 코드는subprocess.call()메소드를 사용하여 Python에서 서버를 ping하는 명령을 실행하는 방법을 보여줍니다.
import platform
import subprocess
def myping(host):
    parameter = "-n" if platform.system().lower() == "windows" else "-c"
    command = ["ping", parameter, "1", host]
    response = subprocess.call(command)
    if response == 0:
        return True
    else:
        return False
print(myping("www.google.com"))
os.system()메소드를 사용하여 Python에서 서버 핑
os.system(command)메소드는command(문자열)를 입력으로 받아서 서브 쉘에서 실행합니다. 명령이 오류없이 실행되면 메서드는0을 반환합니다.
다음과 같은 방법으로os.system()메소드를 사용하여 ping 서버 명령을 실행할 수 있습니다.
import os
def myping(host):
    response = os.system("ping -c 1 " + host)
    if response == 0:
        return True
    else:
        return False
print(myping("www.google.com"))
ping3.ping()함수를 사용하는 Python의 Ping 서버
ping3모듈의ping(addr)함수는 서버 주소를 입력으로 사용하고 서버가 사용 가능하면 ping 시간을 출력으로 반환하고 사용할 수없는 경우False를 반환합니다.
root권한으로ping3모듈을 설치할 수 있습니다.
pip install ping3
서버 주소를ping()메소드에 전달하여 서버를 ping 할 수 있습니다.
from ping3 import ping
def myping(host):
    resp = ping(host)
    if resp == False:
        return False
    else:
        return True
print(myping("www.google.com"))