서버에 접속하려면 서버 ip와 포트를 알아야 한다.
그런데 클라이언트에서 자기 포트를 알아야 하는 경우가 생겼는데, 별 다른 글이 없는 도중 양형의 좋은 글을 발견.
IPGlobalProperties ipProperties = IPGlobalProperties.GetIPGlobalProperties();
IPEndPoint[] endPoints = ipProperties.GetActiveTcpListeners(); TcpConnectionInformation[] tcpConnections = ipProperties.GetActiveTcpConnections();
foreach (TcpConnectionInformation info in tcpConnections) { if(info.RemoteEndPoint.Address.ToString() == WebSocketConfig.serverIp && info.RemoteEndPoint.Port == WebSocketConfig.serverPort) { LazySingleton<UserConfig>.Instance.IpPort = string.Format("{0}:{1}", info.LocalEndPoint.Address, info.LocalEndPoint.Port); break; }
//Console.WriteLine("Local: {0}:{1}\nRemote: {2}:{3}\nState: {4}\n", // info.LocalEndPoint.Address, info.LocalEndPoint.Port, // info.RemoteEndPoint.Address, info.RemoteEndPoint.Port, // info.State.ToString()); } |
참고 사이트
https://codeday.me/ko/qa/20190307/16164.html
'C#' 카테고리의 다른 글
26# Winform ListView Focus 잃었을 때도 선택 고정 (0) | 2019.10.25 |
---|---|
25# 비트 연산 (0) | 2019.10.11 |
23# RSACryptoServiceProvider (0) | 2019.10.01 |
22# CQRS (0) | 2019.08.09 |
21# C# Mysql Connection 라이브러리 (0) | 2019.05.23 |