Как получить IP-адрес сервера из его сокета? - C#
Формулировка задачи:
Всем добрый день. Помогите, пожалуйста, разобраться.
Есть клиент серверное приложение на сокетах. Серверная часть:
Как мне вывести на экран IP-адрес серверного сокета?
На https://msdn.microsoft.com/ru-ru/lib...eendpoint.aspx
пишут такое:
Но у меня студия ругается на запись (IPEndPoint)s.
Заранее благодарю.
serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Any, 1000); serverSocket.Bind(ipEndPoint); serverSocket.Listen(10);
Console.WriteLine ("My local IpAddress is :" + IPAddress.Parse (((IPEndPoint)s.LocalEndPoint).Address.ToString ()) + "I am connected on port number " + ((IPEndPoint)s.LocalEndPoint).Port.ToString ());
Решение задачи: «Как получить IP-адрес сервера из его сокета?»
textual
Листинг программы
foreach(NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces()) { if(ni.NetworkInterfaceType == NetworkInterfaceType.Wireless80211 || ni.NetworkInterfaceType == NetworkInterfaceType.Ethernet) { Console.WriteLine(ni.Name); foreach (UnicastIPAddressInformation ip in ni.GetIPProperties().UnicastAddresses) { if (ip.Address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork) { Console.WriteLine(ip.Address.ToString()); } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д