ホームページ >バックエンド開発 >Python チュートリアル >Python の標準ライブラリのみを使用してローカル IP アドレスを取得するにはどうすればよいですか?

Python の標準ライブラリのみを使用してローカル IP アドレスを取得するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-08 14:45:13775ブラウズ

How Can I Get My Local IP Address Using Only Python's Standard Library?

Python の標準ライブラリを使用したローカル IP アドレスの決定

Python では、標準ライブラリのみを介してローカル IP アドレスにアクセスできます。このメソッドはプラットフォームに依存しないため、オペレーティング システム間で一貫した動作が可能です。

これを実現するために、ソケット モジュールが使用されます。これは、ネットワーク プロトコルと対話し、さまざまなソケット操作を実行するための強力な方法を提供します。私たちの具体的なタスクには、ローカル IP アドレスの検索が含まれます。これは、次の一連の手順を使用して取得できます。

  1. ソケット オブジェクトを作成します。このオブジェクトは通信エンドポイントを表し、特定のプロトコルとソケット タイプを使用するように構成できます。この例では、IPv4 ソケットを示すソケット.AF_INET と、データグラム指向のソケットを示すソケット.SOCK_DGRAM を指定したソケット コンストラクターを使用します。
  2. リモート アドレスに接続します。ローカル IP アドレスを取得するには、既知のリモート ホストへの接続を開始します。ここでは、Google のパブリック DNS サーバーに属する IP アドレス「8.8.8.8」に接続することを選択します。 HTTP トラフィックの標準ポートであるポート 80 が使用されます。
  3. getsockname() を呼び出します。接続が正常に確立されたら、ソケット オブジェクトの getsockname() メソッドを呼び出して、ソケットのローカル アドレスを取得できます。このメソッドは 2 つの要素を含むタプルを返します。最初の要素はローカル IP アドレスを保持し、2 番目の要素はソケットがバインドされているポート番号を表します。
  4. ローカル IP アドレスを抽出します。 getsockname() によって返されたタプルのうち、私たちが主に関心があるのは、ローカル IP アドレスを文字列として含む最初の要素です。

これらの手順に従い、socket モジュールを使用することで、Python プログラムは次のことを行うことができます。ネットワーク インターフェイスで利用可能なローカル IP アドレスを効果的に決定します。

以上がPython の標準ライブラリのみを使用してローカル IP アドレスを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。