nat openvpn

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
levantuev
сержант
Сообщения: 168
Зарегистрирован: 2008-11-05 6:15:43
Контактная информация:

nat openvpn

Непрочитанное сообщение levantuev » 2013-05-14 18:20:14

Есть VPS он же OpenVPN сервер + OpenVPN клиент

tun0 (10.10.14.0/24) - Server через который подлкючаются абоненты
tun1 (10.10.12.2) - Client через который нужно пускать абонентам на внешку

Как раздать внешку клиентам внешку с tun1 на интерфейсе tun0?

/etc/rc.conf

Код: Выделить всё

gateway_enable="YES"

natd_enable="YES"
natd_interface="10.10.12.2"
ipfw

Код: Выделить всё

$cmd divert 8668 ip from 10.10.14.0/24 to any
$cmd divert 8668 ip from any to 10.10.14.0/24
По ipfw sh видно что трафик пытается пройти. Но внешка не пингуется.
00100 20 1276 divert 8668 ip from 10.10.14.0/24 to any
00200 0 0 divert 8668 ip from any to 10.10.14.0/24

Голову ломаю третий день. Выручайте гуру господа!

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

ChihPih
ст. прапорщик
Сообщения: 566
Зарегистрирован: 2009-09-04 12:23:30
Откуда: Где-то в России...
Контактная информация:

Re: nat openvpn

Непрочитанное сообщение ChihPih » 2013-05-14 18:34:10

Параметр net.inet.ip.fw.one_pass, какое значение имеет?
www.info-x.org - информационный ресурс о ОС FreeBSD.

levantuev
сержант
Сообщения: 168
Зарегистрирован: 2008-11-05 6:15:43
Контактная информация:

Re: nat openvpn

Непрочитанное сообщение levantuev » 2013-05-14 18:39:10

ChihPih писал(а):Параметр net.inet.ip.fw.one_pass, какое значение имеет?

Код: Выделить всё

net.inet.ip.fw.one_pass: 1
Только что попробовал ipnat использовать. Через основной шлюз раздает интернет, а вот через VPN канал(tun1) не хочет.
Вот пример при котором сервер раздает впн-клиентам интернет от себя самого т.е через основной шлюз:

Код: Выделить всё

map vtnet0 10.10.14.0/24 -> {Внешний ip}/32

levantuev
сержант
Сообщения: 168
Зарегистрирован: 2008-11-05 6:15:43
Контактная информация:

Re: nat openvpn

Непрочитанное сообщение levantuev » 2013-05-14 18:53:13

Только что попробовал
net.inet.ip.fw.one_pass: 1 -> 0
Без изменений.

ChihPih
ст. прапорщик
Сообщения: 566
Зарегистрирован: 2009-09-04 12:23:30
Откуда: Где-то в России...
Контактная информация:

Re: nat openvpn

Непрочитанное сообщение ChihPih » 2013-05-14 19:21:23

В правилах надо указывать интерфейс, через который идет трафик, потому что вы привели - у вас запрос от клиента попадет под правило при проходе еще через внутренний интерфейс, что не есть верно.
www.info-x.org - информационный ресурс о ОС FreeBSD.

levantuev
сержант
Сообщения: 168
Зарегистрирован: 2008-11-05 6:15:43
Контактная информация:

Re: nat openvpn

Непрочитанное сообщение levantuev » 2013-05-14 19:23:57

ChihPih писал(а):В правилах надо указывать интерфейс, через который идет трафик, потому что вы привели - у вас запрос от клиента попадет под правило при проходе еще через внутренний интерфейс, что не есть верно.
Что тогда делать? Посоветуйте

ChihPih
ст. прапорщик
Сообщения: 566
Зарегистрирован: 2009-09-04 12:23:30
Откуда: Где-то в России...
Контактная информация:

Re: nat openvpn

Непрочитанное сообщение ChihPih » 2013-05-14 19:47:26

Ну надо как то так попробовать:

Код: Выделить всё

$cmd divert 8668 ip from 10.10.14.0/24 to any out via tun1
$cmd divert 8668 ip from any to me in via tun1
www.info-x.org - информационный ресурс о ОС FreeBSD.

levantuev
сержант
Сообщения: 168
Зарегистрирован: 2008-11-05 6:15:43
Контактная информация:

Re: nat openvpn

Непрочитанное сообщение levantuev » 2013-05-14 20:37:01

Достиг следующего:

Абонент подключается к Server_1 -> На Server_1 прописываю "route add 8.8.8.8 10.10.12.2" = Абонент выходит на 8.8.8.8 через Server_2 т.е чего и требовалось, но только для одного ip.

10.10.12.2 - vpn ip Выданный Серверу_1
net.inet.ip.forwarding: 1

Код: Выделить всё

pf: nat pass on vtnet0 from 10.10.14.0/24 to any -> EXT_IP
-
ipfw: Указывалось выше постом
-
ipnat: map vtnet0 10.10.14.0/24 -> EXT_IP/32

Пытался натировать через ipfw, pf, ipnat как вы советовали - не выходит. Может быть кто-нибудь изложит готовый пример на своем опыте, который можно использовать в моей ситуации? Или дело не в Нате?