비슷한 질문을 찾으려고했지만이 질문을 어떻게 발음해야할지 모르겠다. 연결로컬로 소켓 연결을 해제하려면 어떻게해야합니까?
내 서버 코드는
server_Listener = new TcpListener(7778);
server_Listener.Start();
while (true)
{UserSocket user = new UserSocket();
try
{
user.client = server_Listener.AcceptSocket();
}
catch
{
break;
}
if (user.client.Connected)
{
user.server_isClientOnline = true;
this.BeginInvoke((MethodInvoker)(delegate()
{
textBox1.AppendText("client connected\n");
}));
user.server_netStream = new NetworkStream(user.client);
UserSocket 클래스는 소켓 (변수 이름 클라이언트)가 ...이며, NetStream을 (server_netStream)를 받아 클라이언트에서 패킷 데이터를 전송받을 수 있습니다.
내 질문에,이 로컬 연결에서 잘 작동하지만 비 로컬로 작동하지 않습니다.
내 노트북을 사용하여이 서버에 액세스하려고했지만 내 친구가 있지만 그 중 일부는 작동하지 않았습니다.
오류는 아니지만 ... 연결을 수신하지 못했습니다.
내 코드가 잘못 되었습니까? 또는 로컬로 연결되지 않는 새로운 방법이 있습니까?
'로컬이 아닌'이란 '인터넷을 통해'또는 동일한 도메인/작업 그룹 내의 다른 컴퓨터를 의미합니까? –
네트워크의 다른 컴퓨터가 응용 프로그램에 액세스 할 수 있도록 서버의 방화벽에 포트를 열어 보셨습니까? –
이 메시지가 표시됩니까? http://stackoverflow.com/questions/8195421/connecting-sockets-over-internet-network-fails?rq=1 – Alyafey