У меня не корректно работает tcp ip подключение c#
у меня не корректно работает tcp ip подключение на с#. Вот код сервера:
const int port = 11000;
var tcpEndPoint = new IPEndPoint(IPAddress.Any, port);
var tcpSocket = new Socket(ip.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
tcpSocket.Bind(tcpEndPoint);
tcpSocket.Listen(10);
while (true)
{
var listener = tcpSocket.Accept();
var buffer = new byte[256];
var size = 0;
var data = new StringBuilder();
do
{
size = listener.Receive(buffer);
data.Append(Encoding.UTF8.GetString(buffer, 0, size));
}
while (listener.Available > 0);
Console.WriteLine(data); // TODO: проверить .ToString
listener.Send(Encoding.UTF8.GetBytes("Успех"));
listener.Shutdown(SocketShutdown.Both);
listener.Close();
}
вот клиент:
const string ip = "192.168.100.123";
const int port = 11000;
var tcpEndPoint = new IPEndPoint(IPAddress.Parse(ip), port);
var tcpSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
var message = "КУ";
var data = Encoding.UTF8.GetBytes(message);
tcpSocket.Connect(tcpEndPoint);
tcpSocket.Send(data);
var buffer = new byte[256];
var size = 0;
var answer = new StringBuilder();
do
{
size = tcpSocket.Receive(buffer);
answer.Append(Encoding.UTF8.GetString(buffer, 0, size));
}
while (tcpSocket.Available > 0);
_loadText.text = answer.ToString();
StartCoroutine(SceneStart());
tcpSocket.Shutdown(SocketShutdown.Both);
tcpSocket.Close();
НЕ корректно имеется ввиду в том, что это работает тогда когда клиент и сервер подключен к одному WI-FI. Помогите пожалуйста