1. ホーム
  2. python

[解決済み] Pythonでマシンの外部IPアドレスを取得する

2022-09-11 11:53:44

質問

マシンの現在の外部 IP 番号を取得するためのより良い方法を探しています... 下記は動作しますが、情報を収集するために外部のサイトに依存しないようにしたい... 私は Mac OS X 10.5.x にバンドルされている標準の Python 2.5.1 ライブラリを使用するように制限されています。

import os
import urllib2

def check_in():

    fqn = os.uname()[1]
    ext_ip = urllib2.urlopen('http://whatismyip.org').read()
    print ("Asset: %s " % fqn, "Checking in from IP#: %s " % ext_ip)

どのように解決するのですか?

外部 IP を取得するルータの背後にいる場合、残念ですが、あなたのように外部サービスを利用する以外に方法はないでしょう。ルーター自体に何らかのクエリ インターフェースがある場合は、それを使用できますが、解決策は非常に環境に依存し、信頼性も低くなります。