>訪問服務器的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中文網其他相關文章!