Здравствуйте. Написал самый элементарный сервер/клиент. Проблема заключается в том, что если указать IP провайдера, то клиент начинает истерить, что конечный компьютер отверг запрос. Порт открыт, проверял через 2IP, брандмауэр отключен. В роутере тоже все прописано.
Сам код:
Сервер:
static Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
static void Main(string[] args)
{
Console.Title = "Server";
socket.Bind(new IPEndPoint(IPAddress.Any, 25565));
socket.Listen(5);
byte[] buffer = new byte[1024];
Socket client = socket.Accept();
while (true)
{
buffer = null;
buffer = new byte[1024];
client.Receive(buffer);
buffer = ByteParser(buffer);
Console.WriteLine(Encoding.ASCII.GetString(buffer));
}
}
static byte[] ByteParser(byte[] input)
{
for (int i = input.Length - 1; i > 0; i--)
{
if (input[i] == 0)
Array.Resize(ref input, input.Length - 1);
}
return input;
}
Клиент:
static Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
static void Main(string[] args)
{
string Message;
byte[] buffer;
socket.Connect("xxx.xxx.xxx.xxx", 25565);
while (true)
{
Message = Console.ReadLine();
buffer = Encoding.ASCII.GetBytes(Message);
socket.Send(buffer);
}
}