среда, 7 января 2015 г.

Автоматически определяем домашний роутер

Привет.
Новые версии FlylinkDC++ умеют детектировать подключение к интернету через роутер а также помогает узнать
какой у вас IP (белый/серый)
Алгоритм
1. Если в системе дефолтный шлюз = 192.168.1.1 или 192.168.0.1
автоматически включается режим подключения UPnP и рисуется ротуер
2. Если IP адрес полученный от upnp роутера не относится к приватной сети:
10.0.0.0/8
127.0.0.0/8
172.16.0.0/12
192.168.0.0/16

169.254.0.0/16
или к Shared Address Space:
100.64.0.0/10
вероятно у вас белый адрес(динамический или статический
и при нажатии кнопки "Тест портов и определение IP"
внешний WAN IP будет совпадать с полученным IP от роутера.
Если IP различаются, то у вас серый IP и вы находитесь за NAT-ом провайдера
при этом с внешними хабами работа возможна только в пассивном режиме.
У кого есть замечания - пишите в тему/почту
 














Также в связи с тем, что большинство wifi-роутеров сейчас имеют upnp по умолчанию включенным
реализован автоматически переход в пассивный режим если провалилась попытка проброса портов
в этом случае пользователь сможет искать и качать файлики в пассивном режиме через хаб.


Комментариев нет: