Hacker News Digest

Тег: #p2p

Постов: 6

A P2P Vision for QUIC (2024) (seemann.io)

В статье рассматривается применение протокола QUIC для решения проблем обхода NAT в P2P-сетях. Авторы отмечают, что за годы было стандартизировано множество протоколов (STUN, ICE, TURN), но процесс остается сложным из-за разнообразия реализаций NAT, которые переписывают IP-адреса пакетов и действуют как файрволы. Основная проблема P2P-сетей — соединение двух узлов, находящихся за разными NAT, независимо от их типа.

Традиционные решения включают использование STUN для обнаружения публичных IP-адресов, ICE для координации пробивания дыр в файрволах и TURN как запасной вариант с ретрансляцией трафика. Авторы предлагают, что QUIC может предоставить комплексное решение для обхода NAT, объединяя все эти функции в одном протоколе и упрощая P2P-сетевое взаимодействие. Это потенциально может заменить несколько отдельных протоколов единой, более эффективной реализацией.

by mooreds • 05 ноября 2025 г. в 14:06 • 88 points

ОригиналHN

#quic#nat#p2p#stun#ice#turn#webtransport#tls

Комментарии (40)

  • Обсуждение вращается вокруг проблемы NAT и hole punching при попытке установить прямое P2P соединение, включая то, что некоторые NAT ведут себя непредсказуемо и не позволяют hole punching.
  • QUIC и WebTransport обсуждаются как потенциальные решения, но оба стандарта ещё не реализованы в браузерах и их поддержка ограничена.
  • Обсуждается, что для P2P соединений не требуется централизованный сервер, но вопрос в том, что сервер может всё ещё потребоваться для ретрансляции трафика в случае, если оба клиента находятся за NAT.
  • Поднимается вопрос о том, что TLS сертификаты могут быть самоподписанными и не обязаны быть выданы удостоверяющим центром, что может быть использовано для P2P соединений.
  • Участники обсуждают, что хотя WebTransport и был предложен как стандарт для web-платформ, он всё ещё не реализован в браузерах и его будущее неясно.

Iroh-blobs (iroh.computer)

Выпущен iroh-blobs 0.95 с несколькими значительными новыми функциями, главной из которых является пул соединений (util::connection_pool). Этот компонент оптимизирует работу с большим количеством конечных точек, сохраняя верхнюю границу одновременных соединений — критически важно при загрузке blobs из множества провайдеров. Пул через метод get_or_connect либо возвращает существующее соединение, либо создает новое, автоматически управляя временем жизни и закрывая простаивающие соединения по необходимости.

Доступны продвинутые опции настройки: максимальное количество соединений, таймауты подключения и простоя, а также колбэк on_connected для выполнения дополнительной логики перед выдачей соединения. Например, можно настраивать передачу только через прямые соединения для повышения производительности. Важно отметить, что пул возвращает ConnectionRef, а не Connection, для корректного отслеживания времени жизни — клонирование Connection из ConnectionRef нарушит этот механизм. После выпуска iroh 1.0 пул будет перемещен в отдельный крейт.

by janandonly • 27 октября 2025 г. в 23:28 • 117 points

ОригиналHN

#iroh#p2p#connection-pooling#rust#tailscale#vanadium

Комментарии (24)

  • Iroh предоставляет P2P-соединения, но при разработке возникают проблемы с подключением к серверу, а Windows Defender блокирует бинарники, что делает невозможным безопасную поставку клиенту.
  • Пользователи отмечают, что Iroh упрощает создание проектов, обеспечивает безопасную передачу данных и предоставляет гибкие возможности для хранения и синхронизации данных.
  • Некоторые участники обсуждения сравнивают Iroh с другими инструментами, такими как Tailscale и vanadium, и задаются вопросом о различиях в использовании и функционале.
  • Вопросы о версионировании, масштабируемости и производительности при использовании Iroh для хранения и синхронизации данных поднимаются в контексте обсуждения.

Testing “Exotic” P2P VPN (blog.nommy.moe)

Стандартный WireGuard блокируется сигнатурными методами, поэтому автор ищет альтернативные P2P VPN-решения с меш-топологией, открытым исходным кодом и без зависимости от WireGuard. Рассмотрены два варианта: EasyTier и Nebula.

EasyTier — минималистичный проект из Китая, использующий общий пароль для шифрования и поддерживающий множество протоколов для обхода блокировок. Не требует сложной настройки, но не позволяет закреплять IP-адреса за устройствами. Nebula от создателей Slack предлагает PKI на эллиптических кривых, собственный файрвол и зонирование, но требует ручного распределения сертификатов и имеет неудобный интерфейс через SSH. Оба решения упакованы в nixpkgs и подходят для создания самохостанных сетей без центрального сервера.

by todsacerdoti • 28 сентября 2025 г. в 16:47 • 94 points

ОригиналHN

#wireguard#p2p#vpn#easytier#nebula#tinc#iroh#yggdrasil#pki#nixpkgs

Комментарии (22)

  • Обсуждаются альтернативы P2P VPN: упоминаются Tinc, WireGuard, Nebula, Iroh, Yggdrasil, vpncloud, а также устаревшие проекты (Social VPN, Remobo и др.).
  • Критикуется исключение Headscale из сравнения, так как он, по мнению участников, не связан с Tailscale и является полноценной open-source альтернативой.
  • Уточняется, что SSH-интерфейс в Nebula предназначен только для отладки, а не для конфигурации, что было неверно истолковано в исходном посте.
  • Отмечаются проблемы поддержки некоторых проектов (Tinc, по мнению ряда комментаторов, выглядит заброшенным).
  • Обсуждаются технические нюансы: работа derper за обратным прокси, обфускация в AmneziaVPN без уменьшения MTU, идея использования VPN на втором уровне (L2).

Download responsibly (blog.geofabrik.de) 🔥 Горячее 💬 Длинная дискуссия

Geofabrik обновила сервер для скачивания данных OpenStreetMap, сделав загрузки быстрее и доступнее. Теперь запросы на файлы с суффиксом «…latest» автоматически перенаправляются на актуальную версию через HTTP-редирект.

Однако сервер сталкивается с проблемами из-за нерационального использования: некоторые пользователи массово скачивают одни и те же большие файлы (например, 20-ГБ данные Италии тысячи раз за сутки), что замедляет работу для всех и вынуждает блокировать IP-адреса, затрагивая и невинных. Geofabrik призывает скачивать ответственно: использовать единый планшетный файл с planet.openstreetmap.org для глобальных данных, применять pyosmium-up-to-date для инкрементных обновлений крупных регионов (это экономит 98% трафика) и контролировать автоматизированные скрипты во избежание сбоев.

by marklit • 22 сентября 2025 г. в 05:33 • 266 points

ОригиналHN

#openstreetmap#http#bittorrent#p2p#rate-limiting#api#ci-cd#pyosmium

Комментарии (185)

  • Предлагается использовать BitTorrent или аналогичные P2P-технологии для распределения нагрузки при скачивании больших файлов, таких как данные OSM.
  • Обсуждается необходимость внедрения базовых мер защиты: ограничение запросов (rate limiting), обязательная авторизация (API-ключи) для предотвращения злоупотреблений.
  • Основная проблема — безответственное использование ресурсов, часто из-за ошибок в автоматизированных скриптах и CI/CD-пайплайнах, которые многократно загружают одни и те же файлы.
  • Высказывается мнение, что часть пользователей не осознаёт последствий своих действий, и простые технические решения могли бы предотвратить проблему.
  • Отмечается, что некоторые корпоративные среды блокируют P2P-трафик, что ограничивает применимость решений на основе BitTorrent.

PayPal to support Ethereum and Bitcoin (newsroom.paypal-corp.com) 🔥 Горячее 💬 Длинная дискуссия

PayPal открывает новую эру P2P-платежей

Компания PayPal представила функцию персонализированных платежных ссылок, которые можно отправлять через любые мессенджеры. Пользователи из США уже могут создавать одноразовые ссылки для переводов, а в ближайшее время функция станет доступна в Великобритании, Италии и других странах.

В скором времени в приложение PayPal будет интегрирована возможность отправки криптовалюты (Bitcoin, Ethereum, PYUSD) другим пользователям PayPal, Venmo и сторонних кошельков, поддерживающих криптоплатежи.

Компания также подтвердила, что личные переводы между друзьями и родственниками через Venmo и PayPal не подлежат налоговой отчетности по форме 1099-K. Это касается подарков, возмещений расходов и разделения счетов.

«PayPal в очередной раз меняет то, как люди переводят деньги друг другу», — заявил представитель компании.

by DocFeind • 15 сентября 2025 г. в 14:04 • 475 points

ОригиналHN

#paypal#venmo#bitcoin#ethereum#p2p#stablecoins#cryptocurrencies#payments#financial-services

Комментарии (363)

  • Домен paypal-corp.com признан легитимным, несмотря на подозрения в фишинге.
  • Пользователи скептически относятся к вовлечению PayPal в криптовалюты, учитывая историю блокировок счетов и средств.
  • Подчеркивается противоречие между децентрализованной природой криптовалют и централизованной моделью PayPal как посредника.
  • Высказываются опасения по поводу высоких комиссий, регуляторных сложностей и отсутствия реального самоходного кошелька (not your keys, not your crypto).
  • Отмечается, что поддержка криптовалют PayPal уже существует годами, и новость касается в основном стабильных монет (stablecoins).
  • Указывается на ограниченность запуска: сначала только для пользователей в США, что противоречит заявлению «для всех и везде».
  • Многие видят в этом шаге в основном попытку соответствовать регуляторным требованиям и освоить новый рынок, а не технологический прорыв.
  • Поднимается вопрос о практической полезности криптовалют с высокими комиссиями и медленными транзакциями для повседневных расчетов.
  • Высказывается недоверие к корпорациям в целом из-за неповоротливости, плохой поддержки и неэтичных практик.

Make any site multiplayer in a few lines. Serverless WebRTC matchmaking (oxism.com)

Trystero — безсерверный WebRTC-матчмейкинг.
Добавь мультиплеер в пару строк.

Прямо сейчас все на этой странице соединяются напрямую и синхронизируют курсоры и клики.
Поддерживаются BitTorrent, Nostr, MQTT, IPFS, Supabase, Firebase.

Пример:

import {joinRoom} from 'trystero'
const room = joinRoom({appId: 'trystero-lounge'}, '101')

room.onPeerJoin(addCursor)
room.onPeerLeave(removeCursor)

const [sendMove, getMove] = room.makeAction('mouseMove')
const [sendClick, getClick] = room.makeAction('click')

window.addEventListener('mousemove', e => sendMove([e.clientX, e.clientY]))
window.addEventListener('click', () => sendClick(randomFruit()))

getMove(([x, y], id) => setCursorPosition(id, x, y))
getClick((fruit, id) => dropFruitFrom(id, fruit))

Также доступны аудио/видео-потоки и файлы.

by haxiomic • 25 августа 2025 г. в 09:48 • 197 points

ОригиналHN

#webrtc#bittorrent#nostr#mqtt#ipfs#supabase#firebase#p2p#javascript#serverless

Комментарии (59)

  • Демо-страница Trystero вызвала восторг: «круто», «весело», «отличный API», но подчёркнули, что это не «serverless» — просто чужие серверы для SDP-сигналинга.
  • Вопросы масштабируемости: p2p-видео комнаты выше 4-8 человек требуют SFU/TURN-серверов, иначе падает кодировка и сеть.
  • Safari и Firefox жалуются на лаги, зависания и DOMException при множестве PeerConnection.
  • Сравнение с PeerJS: тот использует один центральный сервер, Trystero — гибкий мульти-сигналинг.
  • Подняли юридические риски: в UK и штате Mississippi такой «социальный» сайт обязывает собирать ID пользователей.