Добрый день.
Работает в сети у меня pptpd.
Все хорошо, но что не могу найти как сделать так, чтобы для опреденного адреса писался маршрут.
Сейчас работает так:
route add -net 192.168.88.0/24 dev $IFNAME gw $IPLOCAL
route add -net 192.168.2.0/24 dev $IFNAME gw $IPLOCAL
Но это не верно, т.к. если подключится еще один клиент, то аналогичные маршруты пропишется и ему.
Вопрос такой, я знаю IP клиента, как можно проверять с какого IP и писать нужный маршрут для нужного IP?
Может можно написать правило проверки $IPREMOTE= определенному адресу, то автоматом добавлять нужный маршрут?
pptpd, маршруты для определенного адреса.
Модераторы: SLEDopit, Модераторы разделов
-
Voler
- Сообщения: 498
- ОС: Fedora
Re: pptpd, маршруты для определенного адреса.
Решил сделать так.
VPNSKLAD="100.100.100.100"
if [ $IPREMOTE = $VPNSKLAD ]
then
route add -net 192.168.88.0/24 dev $IFNAME gw $IPLOCAL
fi
Думаю оптимально
VPNSKLAD="100.100.100.100"
if [ $IPREMOTE = $VPNSKLAD ]
then
route add -net 192.168.88.0/24 dev $IFNAME gw $IPLOCAL
fi
Думаю оптимально
-
skeletor
- Сообщения: 1224
Re: pptpd, маршруты для определенного адреса.
Именно так и надо.
-
TonnyBennet
- Сообщения: 230
- ОС: Ubuntu Server 9.10
Re: pptpd, маршруты для определенного адреса.
Voler писал(а): ↑27.11.2013 12:32Добрый день.
Работает в сети у меня pptpd.
Все хорошо, но что не могу найти как сделать так, чтобы для опреденного адреса писался маршрут.
Сейчас работает так:
route add -net 192.168.88.0/24 dev $IFNAME gw $IPLOCAL
route add -net 192.168.2.0/24 dev $IFNAME gw $IPLOCAL
Но это не верно, т.к. если подключится еще один клиент, то аналогичные маршруты пропишется и ему.
Вопрос такой, я знаю IP клиента, как можно проверять с какого IP и писать нужный маршрут для нужного IP?
Может можно написать правило проверки $IPREMOTE= определенному адресу, то автоматом добавлять нужный маршрут?
Я на своих серверах использовал скрипты ip-up.d / ip-down.d с параметрами
Код:
#!/bin/sh
# Скрипт, выполняющий при необходимости задачи маршрутизации для pppd
# Когда ppp связь установлена, этот скрипт вызывается со следующими.
# параметрами
# $1 имя интерфейса, используемое pppd (напр. ppp3)
# $2 имя устройства tty
# $3 скорость устройства tty
# $4 локальный IP адрес для интерфейса
# $5 удаленный IP адрес
# $6 параметр, указанный опцией 'ipparam' в pppd
case "$5" in
# Обработка маршрутизации для сервера Краснодара
192.168.2.3)
/sbin/ip route add 192.168.3.0/24 dev $1 via $5 realm 5 table inet_don
/sbin/ip route add 192.168.3.0/24 dev $1 via $5 realm 5 table inet_enforta
/sbin/ip route add 192.168.3.0/24 dev $1 via $5 realm 5 table main
;;
esac