Pythonのstdlibを使用してローカルIPアドレスを見つける質問する

Pythonのstdlibを使用してローカルIPアドレスを見つける質問する

Python プラットフォームで標準ライブラリのみを使用して、ローカル IP アドレス (192.168.xx または 10.0.xx など) を独立して見つけるにはどうすればよいですか?

ベストアンサー1

私はこれを見つけたばかりですが、少しハックっぽいようです。ただし、*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()

これは、インターネットにアクセスでき、ローカル プロキシが存在しないことを前提としています。

おすすめ記事