Rumah > pembangunan bahagian belakang > C++ > Bagaimana saya dapat mengambil alamat IP pelayan saya dengan cekap?

Bagaimana saya dapat mengambil alamat IP pelayan saya dengan cekap?

Linda Hamilton
Lepaskan: 2025-01-26 06:12:08
asal
832 orang telah melayarinya

How Can I Efficiently Retrieve My Server's IP Address?

Mengakses Alamat IP Pelayan Anda: Pendekatan Diperkemas

Pengaturcara selalunya perlu menentukan alamat IP pelayan yang menjalankan aplikasi mereka. Walaupun kaedah sedia ada berfungsi, penyelesaian yang lebih cekap dan ringkas wujud.

Kaedah biasa menggunakan Dns.GetHostEntry, mendapatkan semula entri hos dan kemudian mengulangi senarai alamatnya untuk mencari alamat IPv4. Ini kurang cekap berbanding pendekatan langsung menggunakan kelas Socket.

Ini kaedah terbaik:

<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>
Salin selepas log masuk

Kod ini mencipta soket UDP dan menyambungkannya kepada hos tempatan. Harta LocalEndPoint memberikan alamat IP tempatan dan port secara langsung. Memisahkan rentetan pada titik bertindih (':') mengasingkan alamat IP. Ini mengelakkan overhed kaedah Dns.GetHostEntry dan lelaran seterusnya, menghasilkan penyelesaian yang lebih cekap dan boleh dibaca.

Atas ialah kandungan terperinci Bagaimana saya dapat mengambil alamat IP pelayan saya dengan cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan