Python获取内网IP
Python 获取本机内网IP
本文记录使用Python获取本机IP的两种方法。
通过hostname来获取本机IP
import socket print(socket.gethostbyname(socket.gethostname()))
此方法是先获取hostname,然后在通过hostname来查看本机的IP。不推荐此方法,因为若是在/etc/hosts
中将hostnam设置为127.0.0.1
,那么获取到的就是127.0.0.1
,而非本机的真实IP。
通过UDP获取本机IP
import socket try: s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) s.connect(('8.8.8.8',80)) ip = s.getsockname()[0] finally: s.close() print(ip)
此方法利用UDP协议,生成一个UDP包,将自己的IP放入UDP协议头中,然后再从中获取本机的IP。此方法虽然不会真实向外发包,但仍然会申请一个UDP的端口,所以如果频繁调用的话也是比较耗时的;可以将查询到的IP缓存在别处以供使用。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2017-10-08 码海拾遗:简单的链表类
2017-10-08 码海拾遗:位运算实现加减乘除