пʼятниця, 1 липня 2011 р.

Налаштування портів для Transmission

Ну от, перейшов на супербезліміт від інтертелекома, а качаються торенти ну дуже повільно. Якщо на чистому анлімі інтер видавав мені 115 кБ, то на суперанлімі - до 800, при середніх значеннях 250-550, що зумовлено, ймовірніш за все, віддаленістю від базової станції.
Як виявляється причинами низької швидкості торентозакачки є: мала кількість роздаючих, низький рейтинг, тощо (більше тут - http://forum.megashara.com/showthread.php?t=5920 і тут - http://katushka.net/forum/showthread.php?tid=1006). Ще одна причина - закриті порти і воно ледве пролазить де може.
Для відкриття портів детальна інформація (ну цілком достатня, скажемо так) є тут http://flug.org.ua/lists/debian-russian/49421/ .
Для себе: я відкрив собі порт 51000. Тому:
Соединения устанавливаются в две стороны:
1) входящие соединения от других клиентов к transmission: они устанавливаются
*с* случайного порта на *заданные* порт transmission

В типичной/нормальной установке файрвола фильтруются только соединения извне на
локальные сервисы, поэтому для торрента их нужно специально разрешить:
# (упрощённо)
# разрешаем прохождение пакетов относящихся к уже установленным соединениям
# (под это правило попадает большинство пакетов, оно должно идти первым)
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# разрешаем всё на loopback
iptables -A INPUT -i lo -j ACCEPT
# режем левизну
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state NEW -p tcp '!' --syn -j DROP
# параноим
#iptables -A INPUT -s 169.254.0.0/16 -j DROP
# (аналогично с другими *не используемыми* приватными сетями)
# (192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12)
# разрешаем входящие соединения для торрента (порт поменяй на свой!)
iptables -A INPUT -p udp -m udp --dport 6688 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 6688 -j ACCEPT
# убиваем *все остальные* попытки соединения:
#iptables -A INPUT -j LOG
iptables -A INPUT -j REJECT

Доступнітсть портів перевіряємо тут - http://www.whatsmyip.org/ports/
І перевіряємо роботу
netstat

Як бачимо, все працює ;)
Швидкість піднялася втричі, ловлю трафік на швидкості близько 50 кбійт на с, що не багато, але все пізнається в порівнянні ;).

Там ще мулька була одна, яка дозволяє у внутрішніх налаштуваннях модема дещо переключити, щоб швидше працював, але то вже інша історія.Після перепідключення, ці налаштування пропадають, тому я їх тупо записав у файл .port_for_transmission (ще варто зробити його виконуваним), який поклав у /root і запускаю просто: #sh .port_for_transmission. Вміст файла:
root@debiano:~# cat .port_for_transmission
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state NEW -p tcp '!' --syn -j DROP
iptables -A INPUT -s 169.254.0.0/16 -j DROP
iptables -A INPUT -s 10.0.0.0/8 -j DROP
iptables -A INPUT -s 172.16.0.0/12 -j DROP
iptables -A INPUT -p udp -m udp --dport 51000 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 51000 -j ACCEPT
iptables -A INPUT -j LOG
iptables -A INPUT -j REJECT
netstat

Немає коментарів:

Дописати коментар