サーバーの IP アドレスへのアクセス: 合理化されたアプローチ
プログラマーは、アプリケーションを実行しているサーバーの IP アドレスを決定する必要があることがよくあります。既存の方法でも機能しますが、より効率的で簡潔なソリューションも存在します。
一般的な方法では、Dns.GetHostEntry
を使用してホスト エントリを取得し、そのアドレス リストを反復処理して IPv4 アドレスを見つけます。 これは、Socket
クラスを使用した直接的なアプローチよりも効率が低くなります。
これが優れた方法です:
<code class="language-csharp">using System.Net; // ... // Create a UDP socket connected to the local host Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); // Connect to localhost (any IP, port 0) socket.Connect(new IPEndPoint(IPAddress.Any, 0)); // Extract the IP address from the local endpoint localIP = socket.LocalEndPoint.ToString().Split(':')[0]; // Close the socket socket.Close();</code>
このコードは UDP ソケットを作成し、ローカル ホストに接続します。 LocalEndPoint
プロパティは、ローカル IP アドレスとポートを直接提供します。 文字列をコロン (「:」) で分割すると、IP アドレスが分離されます。これにより、Dns.GetHostEntry
メソッドとその後の反復のオーバーヘッドが回避され、より効率的で読みやすいソリューションが得られます。
以上がサーバーのIPアドレスを効率的に取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。