Как передать данные с одного компьютера на другой, если они в разных сетях — c#? Пускай у меня есть два компьютера: - один в локальной сети с "белым" ip 12.34.56.78 и имеет "серый" ip 192.168.0.2 - другой в локальной сети с "белым" ip 78.56.34.12 и имеет "серый" ip 192.168.0.3 Задача состоит в передаче массива байтов с одного компьютера на другой средствами c#. Примеры TCP/UDP-чатов нашел только те, которые работают внутри локальной сети и не более. P.S. Читал про проброс портов, что нужно настраивать сам роутер. Из этого вытекает тогда другой вопрос - почему при скачивании чего-нибудь при помощи torrent'та не нужно настраивать роутер? Передача самого файла ведь происходит peer-to-peer.
Для передачи данных с одного компьютера на другой через интернет, отличающихся внешними IP-адресами, можно использовать сокеты TCP или UDP. У каждого компьютера должен быть открыт доступ на определенном порту, который будет использоваться для передачи данных.
Например, на компьютере с "белым" IP 12.34.56.78 можно запустить серверный приложение, который будет ожидать подключения другого компьютера. Далее на компьютере с "белым" IP 78.56.34.12 можно запустить клиентское приложение, которое подключится к серверу через внешний IP и порт.
Однако, для доступа через интернет необходимо настроить проброс портов на роутере, чтобы пакеты данных могли достигнуть нужного компьютера.
Относительно вашего вопроса о torrent: в torrent-сети данные передаются напрямую между пирами (peer-to-peer), поэтому для скачивания файлов через torrent не требуется настройка роутера. Когда компьютеру нужно скачать какой-то файл, он просто подключается к другим пирам напрямую, обходя роутеры, порты и firewall.
Надеюсь, это поможет вам решить вашу задачу по передаче данных между компьютерами с разными внешними IP.
Для передачи данных с одного компьютера на другой через интернет, отличающихся внешними IP-адресами, можно использовать сокеты TCP или UDP. У каждого компьютера должен быть открыт доступ на определенном порту, который будет использоваться для передачи данных.
Например, на компьютере с "белым" IP 12.34.56.78 можно запустить серверный приложение, который будет ожидать подключения другого компьютера. Далее на компьютере с "белым" IP 78.56.34.12 можно запустить клиентское приложение, которое подключится к серверу через внешний IP и порт.
Однако, для доступа через интернет необходимо настроить проброс портов на роутере, чтобы пакеты данных могли достигнуть нужного компьютера.
Относительно вашего вопроса о torrent: в torrent-сети данные передаются напрямую между пирами (peer-to-peer), поэтому для скачивания файлов через torrent не требуется настройка роутера. Когда компьютеру нужно скачать какой-то файл, он просто подключается к другим пирам напрямую, обходя роутеры, порты и firewall.
Надеюсь, это поможет вам решить вашу задачу по передаче данных между компьютерами с разными внешними IP.