Задать вопрос
@Dar1uz

Как организовать клиент-клиент соединение на python через socket?

В интернете нахожу информацию только про реализацию сервера и подключение к нему клиентов. Можно ли реализовать передачу данных без организации сервера?
  • Вопрос задан
  • 114 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillbox
    Профессия Python-разработчик + ИИ
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
Vindicar
@Vindicar
RTFM!
Почитай про разницу между потоковыми и датаграммными сокетами.
В потоковых сокетах всегда есть клиент, устанавливающий подключение, и есть сервер, ожидающий подключение.
Датаграммные сокеты в этом плане более одноранговы, хотя и там обычно есть узел, который первым проявляет инициативую.
В любом случае, проблемы у тебя возникнут, когда оба узла находятся в разных сетях, за несколькими слоями NAT каждый. Имея публично доступный сервер, эту проблему решить куда проще.
Ответ написан
Комментировать
@wows15
В автоматизации сила, брат
Если я правильно понимаю что ты имеешь ввиду, то клиент-клиент соединений не бывает. Всегда есть первый, кто дает возможность к себе подключиться, либо как либо с собой взаимодействовать и другие, которые с ним взаимодействуют. Человек выше написал про датаграмные сокеты, но там все равно нужно чтобы кто то слушал и принимал пакеты, иначе они улетят «в никуда».
Если ты хочешь клиент-клиент соединение то нет никакой проблемы на обоих машинах запустить сервер и каждый сможет подключиться друг к другу в любое время и взаимодействовать.
Если ты хочешь запустить сервер у себя дома, то скорее всего это не получится из-за того что провайдер в целях экономии ipv4 адресов (которых дефицит) использует такую технологию как NAT (а точнее его подвид PAT). Чтобы это обойти нужно купить у провайдера статический айпи адрес за примерно 200 руб месяц.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Краснодар
от 220 000 до 300 000 ₽
ITK academy Краснодар
от 75 000 ₽
DimaTech Ltd Краснодар
от 140 000 до 140 000 ₽