The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"pptp+pf: загадочно работает NAT"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Открытые системы на сервере (Маршрутизация, NAT / OpenBSD)
Изначальное сообщение [ Отслеживать ]

"pptp+pf: загадочно работает NAT"  +/
Сообщение от alex (??) on 14-Май-10, 21:26 
Клиенты подключаются к pptpd, получают "серый" адрес и натятся в интернет, таким вот образом:

nat on $inet from <pptp> to any -> ($inet:0)

Всё работает, только выяснилась странная вещь - у юзеров через этот NAT на вход каким-то чудом пролетают входящие соединения uTorrent, причём всё это идёт именно через туннель. Никаких редиректов в обратную сторону в pf нет, upnp тоже нет. Как оно так делает? Всегда ж чтобы через NAT что-то прокинуть на серый адрес нужно отдельно редирект прописывать...

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "pptp+pf: загадочно работает NAT"  +/
Сообщение от alex (??) on 14-Май-10, 23:01 
Сам спросил - сам ответил, но вещь думаю будет интересна не только мне.

Я однако отстал от жизни. Utorrent (и не только он один) использует некую штуку под названием "UDP hole punching", которая внаглую заставляет NAT открыться внутрь игнорируя правила pf'а. Особый кайф эта шутка доставляет ещё и тем, что попытавшись как обычно зарезать нужные порты на внешнем интерфейсе роутера админ я сильно обломался. Если сделать `pfctl -s states` то можно увидеть что происходит - порт который мы собираемся блочить существует только на сером IP юзера, а на выходе с роутера во внешний мир номер порта будет абсолютно другой. Соответственно резать надо на внутреннем интерфейсе. Впрочем резать всё равно бесполезно, юзер меняет порт в торренте и качает дальше. Только если совсем UDP запрещать...

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "pptp+pf: загадочно работает NAT"  +/
Сообщение от Xaionaro email(ok) on 15-Май-10, 15:19 
>[оверквотинг удален]
>вот образом:
>
>nat on $inet from <pptp> to any -> ($inet:0)
>
>Всё работает, только выяснилась странная вещь - у юзеров через этот NAT
>на вход каким-то чудом пролетают входящие соединения uTorrent, причём всё это
>идёт именно через туннель. Никаких редиректов в обратную сторону в pf
>нет, upnp тоже нет. Как оно так делает? Всегда ж чтобы
>через NAT что-то прокинуть на серый адрес нужно отдельно редирект прописывать...
>

Благодаря примитивности протокола UDP и отсутствию "рукопожатия", есть возможность простреливать UDP-порты. Я не знаю как именно это реализованно в uTorrent, но если там не реализованно _синхронное_ соединение с обоих сторон, то может помочь очень низкий timeout для "udp.single"

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру