相关疑难解决方法(0)

用Python ping一个站点?

基本代码是:

__PRE__

我怎么能ping一个网站或地址?

python network-programming ping

72
推荐指数
8
解决办法
21万
查看次数

python非特权ICMP

在尝试从python中找出ping(ICMP)的最佳方法时,我遇到了以下问题:

答案通常归结为"使用具有root权限的第三方模块"或"使用系统的ping命令并解析输出".在本机方法中,icmplibM. Cowles以及J. Diemer的ping.py明确提到了root权限的需要,scapy 手册也是如此.

所以从那个方面来看,原本发送没有特权的ICMP ping似乎是不可能的.系统ping命令确实以某种方式进行管理,但其手册页并未阐明如何操作.另一方面,icmp手册页似乎表明它是可能的:

Non-privileged ICMP
     ICMP sockets can be opened with the SOCK_DGRAM socket type without
     requiring root privileges. The synopsis is the following:

     socket(AF_INET, SOCK_DGRAM, IPPROTO_ICMP)

     Datagram oriented ICMP sockets offer a subset of the functionality avail-
     able to raw ICMP sockets. Only IMCP request messages of the following
     types can be sent: ICMP_ECHO, ICMP_TSTAMP or ICMP_MASKREQ.

所以看起来,至少根据icmp,它是允许的.那么为什么所有的python工具都无法做到这一点呢?python工具是否过于笼统,并期望特权套接字上的任何工作都具有特权?是否有可能在C中编写ping函数,可以在没有root权限的情况下ping,并用此扩展python?有没有人这样做过?我只是误解了这个问题吗?

python ping icmp

21
推荐指数
4
解决办法
2万
查看次数

如何使用本机python执行ping或traceroute?

我希望能够在Python中执行ping和traceroute而无需执行相应的shell命令,因此我更喜欢本机python解决方案.

python ping traceroute

6
推荐指数
2
解决办法
2万
查看次数

标签 统计

ping ×3

python ×3

icmp ×1

network-programming ×1

traceroute ×1