Я немного разбираюсь в сетевом программировании (и сетевых концепциях в целом) после прохождения курса по сетевым технологиям в университете несколько лет назад.
Я помню, как смог создать простое приложение для чата, гдеСервер чата используется в качестве центрального каталога, который знает, какие клиенты в данный момент находятся в сети, но как только клиент узнает другого клиента, с которым он хочет пообщаться, реальные сообщения между ними не должны проходить через сервер.Я помню, что мы могли проверить это только на нескольких машинах локальной сети.
Эта программа чата на C # также содержит несколько комментариев, в которых упоминается, что программа не работает через Интернет: http://www.geekpedia.com/tutorial239_Csharp-Chat-Part-1---Building-the-Chat-Client.html
Мой вопросВот почему эти приложения не работают через Интернет, когда «коммерческие» приложения чата могут.Конечно, есть какой-то способ сделать мой компьютер доступным для внешней сети, даже если его IP-адрес недопустим за пределами сети провайдера.