Ну что же, господа! Мне есть, чем отчитаться ))
Как и планировал, в пару дней уложился, что немного, если учесть через сколько всего пришлось прорываться.
По крайней мере, результат правдоподобный. Но чтобы проверить, надо собрать более сложную конфигурацию, пока я этого сделать не успел.
Поехали по порядку.
1. Да, PPTP протокол, как и все семейство PPP, не передает клиенту маршрутов по определению.
2. Однако, есть DHCP с его option 249 для Windows и 121 для других систем.
3. Клиенту не обязательно быть клиентом DHCP, чтобы получить маршруты из DHCP. Windows, подключившись к серверу по PPTP, вполне себе посылает запрос DHCPINFORM, надо только принять его и обработать.
4. На Микротике я не смог принять этот пакет, все работало только для клиентов DHCP. Но это устройство мне и не очень нужно.
5. А вот DFL вполне себе может ))
Итак, что делаем?
1. Создаем pptp интерфейс, убеждаемся, что все работает.
2. Создаем отдельный сервер DHCP на этом интерфейсе
Вложение:
dhcpserv.png [ 8.86 KiB | Просмотров: 3299 ]
3. На этом сервере делаем option 249.
Вложение:
option.png [ 4.72 KiB | Просмотров: 3299 ]
На картинке значение видно не полностью. Для того, чтобы отправить трафик для 192.168.11.0/24 на 192.168.6.200, надо в это поле записать 24,192,168,11,192,168,6,200
4. Подключаюсь с XP, имею результат.
Вложение:
route.png [ 40.82 KiB | Просмотров: 3299 ]
Видим, что строка для этой сети в таблице появилась. Правда, маршрут не на .200, а на .64 (это - тот адрес, который получил клиент при подключении). Я думаю, при правильно настроенной маршрутизации на DFL, все будет работать. Но для уверенности, конечно, надо бы туда воткнуть что-нибудь и проверить... не сейчас.
Возможны огрехи: я бился с этой фигней долго и мог что-то прописать, например, в настройки FW, без чего это не будет работать. Но это уже детали.