November 2019

S M T W T F S
      12
34 5 678 9
10111213141516
17181920212223
24252627282930

Style Credit

Expand Cut Tags

No cut tags
Tuesday, May 10th, 2005 10:14 am

Дано: динамический IP-адрес на DSL'е. Адрес получается модемом, остальная локальная сеть живет на фейковых адресах 192.168.0.*.
Модем умеет NAT из внутренней сети наружу, умеет port forwarding по конкретным портам (по диапазонам не умеет) снаружи внутрь.
На внутреннем сервере 192.168.0.1 поднят dyndns-клиент, скажем, для myip.dyndns.net.

Требуется: запустить на всей этой хрени битторрентовый сервер, то есть, трекер и [хотя бы один] сид.

Начинаем;
Генерируем .torrent'ы, в которых трекером указываем http://myip.dyndns.net:6969/announce

Включаем на модеме port forwarding для порта 6969, поднимаем на 192.168.0.1 трекер на порту 6969, убеждаемся, что он работает.

Включаем на модеме port forwarding еще и на порт 6881, запускаем битторрентового клиента (далее - сид), прибиваем ему гвоздями порт 6881.

И тут нас ожидает засада: сид не может связаться с трекером. Потому что в torrent'е написано, что трекер живет на myip.dyndns.net, который есть внешний IP-адрес. Делать port forwarding из внутренней сети обратно в неё же модем, похоже, не умеет. Впрочем, и не обязан.

Пытаемся лично для своего сервера посредством /etc/hosts сказать, что myip.dyndns.net есть 192.168.0.1.
После этого сид замечательно связывается с трекером, но тут случается вторая засада.
Сид приходит к трекеру с адреса 192.168.0.1. Этот адрес трекер и будет отдавать всем внешним клиентам. С соответствующим печальным результатом.

Для обхода такой фигни у клиента есть опция --ip, там можно явно указать, какой свой IP-адрес клиент будет говорить трекеру. Пишем туда myip.dyndns.net - опять облом, он же через /etc/hosts опять ресолвится в локальный 192.168.0.1, и ситуация совершенно не меняется.

Что делать?
Мне пока пришло в голову только завести второй dyndns'ный адрес, и скармливать его сиду через --ip. Но оно как-то некрасиво, и, кажется, нарушает политику dyndns.

Включил wildcards на dyndns, приделал трекеру и сиду разные имена. Предыдущая проблема вроде как вылечилась, но всё равно нифига не работает. Сижу, пытаюсь понять, почему.

Может, у кого ещё идеи есть?

Reply

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting