В общем кеи нагенерил, сервера сконфигурировал и поднял tun0, он имеет ip 192.168.137.1
В глобале есть свободный ip адрес к примеру 82,239,291,13 привязанные к интерфейсу eth0:1. Как мне правильно перенаправить приходящие пакеты на tun0 ?
Прошу не отправляйте читать, подскажите конкретно
Что значит перенаправить? Какая в конечном итоге цель? Перенаправить с интерфейса на интерфейс?
Или перенаправить пакеты адресованные для 82.239.291.13 на другой IP-адрес (я так понимаю этот адрес клиент VPN)?
Система -- это совокупность элементов и связей, дающая новые свойства, не присущие ни одному из элементов и ни одной из связей.
Что значит перенаправить? Какая в конечном итоге цель? Перенаправить с интерфейса на интерфейс?
Или перенаправить пакеты адресованные для 82.239.291.13 на другой IP-адрес (я так понимаю этот адрес клиент VPN)?
Ну вообще я понял что прямой интернет адрес tun0 не назначишь. Приходится интернет адрес поднимать на интерфейсе eth0:1 , а tun0 ставить какой-то адрес внутренний и потом чето творить далее или я неправ ?
Клиент (КлIP) подключается к серверу (CервIP) - обмениваются ключами,обмениваются - кончили обмениваться.
Если все хорошо и ключи подошли на клиенте появляется новый интерфейс например tun0 и адрес тира 1.1.1.6 на сервере
туннель был ужо после старта - например tun666 и IP 1.1.1.1. Тут должны пинговаться адреса между собой.
Далее сервер пропихивает клиенту роутинги на себя через туннель и все работает.
Клиент (КлIP) подключается к серверу (CервIP) - обмениваются ключами,обмениваются - кончили обмениваться.
Если все хорошо и ключи подошли на клиенте появляется новый интерфейс например tun0 и адрес тира 1.1.1.6 на сервере
туннель был ужо после старта - например tun666 и IP 1.1.1.1. Тут должны пинговаться адреса между собой.
Далее сервер пропихивает клиенту роутинги на себя через туннель и все работает.
Клиент (КлIP) подключается к серверу (CервIP) - обмениваются ключами,обмениваются - кончили обмениваться.
Если все хорошо и ключи подошли на клиенте появляется новый интерфейс например tun0 и адрес тира 1.1.1.6 на сервере
туннель был ужо после старта - например tun666 и IP 1.1.1.1. Тут должны пинговаться адреса между собой.
Далее сервер пропихивает клиенту роутинги на себя через туннель и все работает.
vpn-сервер имеет ip = 10.0.0.1, а клиент 10.0.0.2. Клиент должен иметь шлюз по умолчанию -- здесь это ip-адрес vpn-сервера. Таким образом пакеты пойдут от клиента по дефолтовому маршруту к vpn-серверу, а от него по его таблице маршрутизации по дефолту к провайдеру. На сервере нужно сделать то, что я написал выше.
Система -- это совокупность элементов и связей, дающая новые свойства, не присущие ни одному из элементов и ни одной из связей.
На клиенте жесткий узкий роутинг до сервера: ip route add 82.239.291.13/32 dev ppp0
На сервере:openvpn.conf
push "route 0.0.0.0 0.0.0.0" отдаем клиенту дефолтный роутинг через туннель.
На сервере Iptables
iptables -t filter -A FORWARD -i tun0 -s 192.168.137.1 -o eth0:1 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0:1 -s 192.168.137.1 -j MASQUERADE (или DNAT как сказал предыдущий оратор)
Прямой IP -- назначишь, вариантов -- несколько:
- создаётся bridge между сетевой и туннелем
- включается proxy arp и внутри туннеля раздаются реальные адреса(правда, для этого варианта нужно несколько внешников, которые будут использоваться в туннеле)
На клиенте жесткий узкий роутинг до сервера: ip route add 82.239.291.13/32 dev ppp0
На сервере:openvpn.conf
push "route 0.0.0.0 0.0.0.0" отдаем клиенту дефолтный роутинг через туннель.
На сервере Iptables
iptables -t filter -A FORWARD -i tun0 -s 192.168.137.1 -o eth0:1 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0:1 -s 192.168.137.1 -j MASQUERADE (или DNAT как сказал предыдущий оратор)
P.S eth0:1 Грех экономить на сетевухах
сделал как вы сказали - непомогло. Клиент подвисает на стороне клиента:
UDPv4 link local: [undef]
UDPv4 link remote: xx.xx.xx.xx:1194
Что значит подвисает? Поднимается ли клиентский туннель? получает ли клиент роутинг?
Пингуется ли удаленная сторона туннеля? Прописали ли вы узкий роутинг до VPN сервера?