[an error occurred while processing this directive]

pptpd и решение проблемы маршрута по умолчанию
Суть вопроса: 
Имеем настроенный на linux pptp сервер для подключения внешних клиентов к
ресурсам внутренней сети. При установлении соединения с pptp сервером на машине
windows клиента поднимается маршрут по умолчанию с более высоким приоритетом,
чем маршрут через основное подключение. Вследствие чего перестает работать
связь с Интернет, со всеми вытекающими последствиями. Если же в свойствах pptp
соединения отключить галочку с пункта  "Использовать основной шлюз в удаленной
сети", то пропадает связь до ресурсов в удаленной сети. Возможности передать
маршруты в рамках соединения клиент-сервер через pptpd нет.

Решение:
Используем мапирование адресных пространств сетей. Будем транслировать то
пространство, которое является локальным для интерфеса windows клиента после
установки соединения.

Например, имеем адресное пространство удаленной(по отношению к клиенту) сети
192.168.0.0/24, а адрес интерфейса pptpd:

   # grep localip /etc/pptpd.conf
   localip 10.50.11.1

Настраиваем трансляцию адресного пространства:

   # iptables -t nat -A PREROUTING -d 10.50.11.0/24 -j NETMAP --to 192.168.0.0/24 -m comment --comment "For_PPTPD_clients"

После чего с клиентской машины есть связь и с интернет, и с ресурсами удаленной
сети через адреса 10.50.11.x. Неудобство с применением IP можно обойти через
настройку dns с использованием отдельной зоны для клиентов pptpd сервера.

Необходимо отметить, что есть еще другой путь решения проблемы - через
настройку отдельного dhcp на стороне сервера и использования option
ms-classless-static-routes code, option rfc3442-classless-static-routes code. Встретил
здесь. Может быть он более
правильный, но мне приведенное решение показалось более красивым и простым.

PS:  Не забудьте разрешить соединения через цепочку FORWARD, если используется
политика "Запрещено все, что не разрешено".
 
14.03.2012 , Автор: Брызгалов Константин
Ключи: pptp, route, dhcp, linux / Лицензия: CC-BY
Раздел:    Корень / Администратору / Сетевая подсистема, маршрутизация / PPP, PPTP, PPPOE

[an error occurred while processing this directive]

[an error occurred while processing this directive]