Умеют ли DC-клиенты работать одновременно с несколькими хабами ? И есть ли понятие приоритетный хаб ? Просто возникла следующая идея -
- есть провайдеры А, Б и В. Каждый из них раздает юзерам белые внешние айпишники. У юзеров А вебстрим и у них нет внутренних адресов совсем. У юзеров Б и В - локалка и внутренние серые адреса есть. А, Б и В соединены пирингом, но по внутренним адресам юзеры Б не видят юзеров В, и наоборот. Зато все всех видят по их внешним адресам.
Мы поднимаем несколько хабов. У каждого из провайдеров Б и В поднимается свой локальный хаб, доступный по внутреннему адресу только для своих юзеров. Юзеры А в обломе т.к. у них нет локальных адресов :). Плюс к этому поднимается еще один хаб Г, который для всех юзеров - внешний, т.е. они видят его все и заходят на него под своими внешними адресами.
В DC-клиенте неким волшебным образом прописываются все эти хабы, при этом локальные Б и В получают более высокий приоритет. При запуске DC-клиент пытается коннектиться ко всем. У юзеров провайдера А получится увидеть только хаб Г, у юзеров Б - хабы Б и Г, у юзеров В - хабы В и Г.
Юзер ткнул в магнет-ссылку, она передается в DC-клиент. Он ищет ее на тех хабах, к которым подсоединен и например нашел сразу на двух - на локальном Б и внешнем Г. У Б приоритет выше, поэтому он начинает качать файл с него, то есть от локальных пользователей. Если нашел только на Г - начинает качать по внешним адресам (предполагается, что тут провайдеры позаботились о роутинге данного трафика через точку пиринга).
Получится ли такое сделать на практике ?