Я сейчас пишу одноранговое чат-приложение для чата по всему миру, но моя проблема в том, что я не могу подключиться() к другому компьютеру за пределами локальной сети, потому что, хотя у меня есть публичный IP-адрес моих друзей и, при необходимости, я могу получить их частный IP-адрес, как я могу подключиться к их ПК, поскольку общедоступный IP-адрес - это адрес маршрутизатора, а не один компьютер, и я могу указать только один адрес (либо общедоступный или частный). Итак, как я могу отправить сообщение на компьютер конкретным, а не маршрутизатору, не настраивая его ?. Я знаю, что это возможно, потому что иначе, если вы попросите веб-страницу, все компьютеры вашего компьютера могут получить вашу личную информацию (в проводной схеме, так как в wi-fi это очевидно). Любая помощь была бы оценена, извините за плохой английский: D.Действуя как сервер за пределами локальной сети
ответ
У IPv6 есть «один IP на ПК»? – chubakueno
, если да, я мог бы пойти и удалить весь свой код TCP/IP прямо здесь: D – chubakueno
@chubakueno: По крайней мере, число возможных адресов IPv6 достаточно велико, чтобы больше не использовать NAT. Есть так много, что вы можете назначить официальный IP-адрес даже для вашей кофемашины. – alk
Фактически частный IP-адрес компьютеров с другой стороны маршрутизатора не поможет вам. В этих ситуациях, если они инициируют соединение с вами, тогда вы в порядке, так как можете ответить на это соединение.
Для подключения к ним вы должны к их общедоступному IP-адресу, и они должны иметь свой маршрутизатор, сконфигурированный для сопоставления входящего запроса (на любом порту) с правильным IP-адресом в своей сети ,
Так что я не могу начать соединение с другим компьютером, если оба находятся за маршрутизатором ?. – chubakueno
Не имеет значения, где находится инициирующий компьютер (при условии, что маршрутизатор/межсетевой экран отключит соединение), но на целевом компьютере, если за маршрутизатором, должен быть настроен маршрутизатор правильно. Невозможно «добраться до маршрутизатора», чтобы добраться до компьютера. –
Запросы незапрошенных соединений будут в целом отклонены любой машиной с четным битом безопасности. Ваше приложение для чата должно работать на задействованных машинах, а затем они могут прослушивать соединения в обоих направлениях. – AJG85
Во-первых, вы должны быть уверены, что компьютер, к которому вы пытаетесь подключиться, прослушивает определенный порт (тот, к которому вы пытаетесь подключиться).
Вам также необходимо настроить маршрутизаторы ваших друзей, чтобы они перенаправляли весь запрос на этот порт на компьютеры ваших друзей. Если у вас нет доступа к маршрутизаторам, лучше всего использовать компьютер, который не находится за маршрутизатором в качестве сервера чата.
да, проблема в том, что я хочу полностью анонимный чат, кроме регистрации и выхода из системы (где вы подключаетесь к базе данных и загружаете свою личную информацию). Но если я не могу сделать это P2P, все в порядке. – chubakueno
Это противоречивое утверждение ;-) Требование логинов и базы данных личной информации - это полная противоположность анонимности. – AJG85
Точнее, я хочу, чтобы мой сервер никогда не знал, что говорят кто-то и ее gf: D – chubakueno
Идеальное решение для использования uPNP. Это позволяет вашему приложению разговаривать с маршрутизаторами (маршрутизаторами) в текущей сети и просить их пересылать вам соответствующие сообщения. Затем это делает отверстие в брандмауэре, которое позволяет вашему приложению (на другом ПК) подключаться.
Предполагая, что оба приложения сделают это, любой конец может инициировать соединение. Если только один конец имеет приложение, то конец OTHER должен инициировать соединение.
Представьте what would happen, если все в Интернете могли только отправлять сообщения любому - без программного обеспечения предварительно установленной ...
- 1. UDP «sendto» за пределами локальной сети
- 2. ARP за пределами своей локальной сети
- 3. Доступ к локальной машине за пределами локальной сети
- 4. Как установить соединение с клиентским сервером за пределами локальной сети?
- 5. OSB smb share не отображается за пределами локальной сети
- 6. Perforce Swarm, как получить доступ за пределами локальной сети?
- 7. Проблемы с тестированием UDP-кода за пределами локальной сети?
- 8. Просмотреть графики InfluxDB Cronograf за пределами локальной сети
- 9. Как заставить веб-сервер отвечать на запрос за пределами локальной сети?
- 10. Как вы подключаете сервер и клиент DatagramSocket за пределами локальной сети (LAN)?
- 11. Можно ли перехватить данные за пределами их локальной сети?
- 12. Посетить сервер с локальной сети
- 13. Принять соединение за пределами сети за брандмауэром
- 14. HybridAuth работает в локальной сети, но не при доступе за пределами моей сети
- 15. Как отправить запрос GET с сервера coap на устройство, работающее за пределами локальной сети?
- 16. Сервер разработки Django в локальной сети
- 17. Найдите сервер по локальной сети в JavaScript
- 18. Найти сервер java в локальной сети
- 19. Git сервер/настройка клиента по локальной сети
- 20. Доступ к локальной переменной за пределами javascript
- 21. Запустить git-сервер в локальной сети
- 22. Android - Устанавливает сервер внутри локальной сети?
- 23. Поиск Подсоединяется Игровой сервер в локальной сети
- 24. Найти веб-сервер, установленный в локальной сети
- 25. Простой сервер Winsock действуя unreliablely
- 26. Сервер Nodejs, недоступный в локальной сети
- 27. Запуск Django без Apache с помощью runserver на порт 80 и доступен за пределами локальной сети
- 28. Не удается подключиться к FTP-серверу IIS за пределами локальной сети
- 29. Доступ к серверу из локальной локальной сети
- 30. Файл локальной сети локальной сети Linux
Что именно конкретный вопрос? Простейшая система чата, о которой я мог думать, будет использовать сообщения или сообщения HTML через веб-службу для клиентов, работающих в браузере. Если вы делаете толстый клиент и хотите общаться с другими клиентами, вы можете использовать сокеты tcp/ip. – AJG85
Да, я думал об этой возможности, так как я получаю список моих друзей от получения на PHP на моем сервере, но мне жаль, что я не могу общаться с ними в стиле P2P, полностью анонимно, кроме как от входа и выхода из системы. – chubakueno
Вы можете использовать протокол P2P, такой как Bittorrent, достаточно легко, если он будет доступен на других машинах. Я не могу думать ни о какой машине, у которой нет tcp/ip или браузера. – AJG85