【发布时间】:2012-07-12 07:03:56
【问题描述】:
在我的 Python 脚本中,我需要检索运行脚本的机器的 IP 地址及其网络地址和网络字节。
至于IP地址,我在存档中找到了解决方案:
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(("www.google.com",80))
myAddress = (s.getsockname()[0])
s.close()
但是我应该如何查找网络地址和网络字节?我需要将此信息以$NetworkAddress/$NetworkBytes 的格式放入 tcpdump 的过滤器中,如果这有帮助的话。
例子:
128.1.2.0/20
当我运行ip addr 时,我实际上可以在inet 下找到它。在 Python 中获取此信息的任何简单方法?
【问题讨论】:
-
NetworkBytes 还是网络掩码?
-
+1 用于展示你目前拥有的东西
-
“网络地址”和“网络字节”是什么意思?
-
好的,我在原始帖子中添加了更多详细信息。
-
您的示例似乎是 IP 地址/前缀长度。我仍然不知道您所说的“NetworkBytes”是什么意思,因为如果这应该与“前缀长度”的含义相同,那么 NetworkBytes 是一个非常奇怪的名称……无论如何,如果您的意思是 IP 地址/前缀长度,那么,您是指分配给运行脚本的机器上的本地接口之一的 IP 地址和前缀长度吗?
标签: python sockets ip ip-address