On 08.04.2014 13:43, skeletor wrote: > Всем привет. > Есть 2 внешних канала инета и настроен PBR на PF. Для tcp всё отлично > работает, а вот для UDP не совсем: DNS запросы отлично отрабатываются и > ответы возвращаются на тот интерфейс, откуда пришёл запрос. Для openvpn > (работает по UDP) - нет, ответы отправляются (смотрю через tcpdump) по > default route, хотя правила 1 в 1. > Не могу понять, почему для DNS это работает, а для OpenVPN - нет. Может > у кого-то есть рабочий пример PBR'a - буду очень признателен. > Уже перепробовал десяток разных конфигурация по PRB из сети, но никак не > выходит завернуть. Даже где-то наткнулся где-то на тот факт, что для UDP > это сделать нельзя.
Нужно обратить внимание на вывод tcpdump, с которого IP отвечает openvpn. Для UDP приложению, которое слушает "любой IP" (*:port), нельзя выяснить, на который именно IP пришел запрос, поэтому нельзя ответить с него. bind (и ntpd и другие) обходят эту проблему, создавая по отдельному сокету для каждого IP и принимая запросы в разные сокеты.
