python 最简单的 ICMP ping

python simplest ICMP ping

如何检查设备 (phone) 是否连接到家庭 WIFI。我想在 phone 连接后监控 LAN 和 运行 特定功能,并在断开连接时继续监控。

如果它到达目的地,我想发出 ping 并得到一个布尔值响应。我试过 ping.verbose_ping('192.168.1.x', count=1) 但它只是在控制台中打印,我的脚本中没有任何内容。

使用ping.do_one

ping.do_one('www.q.com', 1, 1)

你会得到一个None

ping.do_one('localhost', 1, 1)

您将获得往返时间

ping.do_one('unknown_host', 1, 1)

你会得到一个例外

Scapy 是你的朋友 ;)

import scapy
from scapy.all import *
def ping(host, count=1):
  packet = IP(dst=host)/ICMP()
  for x in range(count):
     ans = sr1(packet)
     ans.show2()

ping ("192.168.1.x",your_count_value)