首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Python获取本机所有IP地址

众所周知,Python标准库socket中有可以获取本机IPV4地址的方法,下面是网上非常常见的一种用法: >>> import socket >>> hostname = socket.gethostname...DESKTOP-I734J3O' >>> socket.gethostbyname(hostname) '192.168.0.103' 上面的代码在Windows下运行良好,但是无意中发现在Mac系统下运行不正常,返回的是本机回环地址...address, port)形式的元组,而对于IPV6协议是(address, port, flow info, scope id)形式的元组,也就是说,不管是IPV4还是IPV6,上面的函数都可以正确地获取...0)) (, 0, 0, '', ('2001:0:9d38:6ab8:1456:951:2418:27cf', 0, 0, 0)) 如此便可以获取本机所有...IPV4和IPV6地址,如果只想获取IPV4地址,再继续执行下面的代码: >>> [item[4][0] for item in addrs if ':' not in item[4][0]][0] '

4K40

python 优雅获取本机 IP 方法

见过很多获取服务器本地IP的代码,个人觉得都不是很好。从网上搜索到一个靠谱的脚本,分享一下! 通过 UDP 获取本机 IP,目前见过最优雅的方法 这个方法是目前见过最优雅获取本机服务器的IP方法了。...而且是利用 UDP 协议来实现的,生成一个UDP包,把自己的 IP 放如到 UDP 协议头中,然后从UDP包中获取本机的IP。 这个方法并不会真实的向外部发包,所以用抓包工具是看不到的。...在 shell 中可以一行调用,获取本机IP [root@localhost opt]# python -c "import socket;print([(s.connect(('8.8.8.8', ...socket.AF_INET, socket.SOCK_DGRAM)]][0][1])" 192.168.218.140 [root@localhost opt]# 亲测本方法在windows和Linux系统下均可正确获取...IP地址 get_ip.py import socket def get_host_ip():     """     查询本机ip地址     :return: ip     """     try

9.3K11
领券