Python ping IPv6 主机列表,并根据时间制作可达和不可达主机的字典

Python ping list of IPv6 hosts and make a dictionary of reachable and unreachable hosts with time

以下脚本对 IPv4 工作得很好,但我的工作是对 IPv6 做同样的事情。

#!/usr/bin/python
import pyping

response = pyping.ping('8.8.8.8')

if response.ret_code == 0:
    print("reachable")
else:
    print("unreachable")

有什么办法..我尝试安装 aioping 或 aio_ping..但是没有用..有什么解决方法可以解决 运行 与上述 [=17] 中的 IPv6 相同的问题=] 机器

使用 multi-ping (pip install multiping) 文档中的示例:

from multiping import MultiPing

# Create a MultiPing object
mp = MultiPing(["2a00:1450:4005:803::200e"])

# Send the pings to those addresses
mp.send()

# With a 1 second timout, wait for responses (may return sooner if all
# results are received).
responses, no_responses = mp.receive(1)

if responses:
    print("reachable: %s" % responses)

if no_responses:
    print("unreachable: %s" % no_responses)

查看文档以了解 responses/no_responses 的结构以及如何同时 ping 多个地址。