使用Python的stdlib查找本地IP地址

发布于 2021-02-02 23:20:52

如何仅使用标准库在Python平台中独立查找本地IP地址(即192.168.xx或10.0.xx)?

关注者
0
被浏览
174
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。
    import socket
    socket.gethostbyname(socket.gethostname())
    

    这将永远无法正常工作(返回127.0.0.1主机/etc/hosts名为as的机器127.0.0.1),将是gimel显示的一种称呼,socket.getfqdn()而是使用。当然,您的计算机需要一个可解析的主机名。



  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    刚刚发现了它,但似乎有点破烂,但是他们说在* nix上尝试过,而我在Windows上做了,它起作用了。

    import socket
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.connect(("8.8.8.8", 80))
    print(s.getsockname()[0])
    s.close()
    

    这假定您可以访问互联网,并且没有本地代理。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看