Я уже несколько дней пытаюсь решить мою проблему. Я уже давно использую openvpn для окон, и после замены окон на ubuntu 13.10 я был рад видеть, что openvpn доступен и для ubuntu.
Я скопировал свои настройки из окон и в / var / log / syslog вижу, что мое соединение успешно создано. Однако, что бы я ни делал, я не могу устанавливать маршруты. В Windows это было просто сделано с помощью сценария, который работал следующим образом (IP-адреса немного различаются, так как я должен держать их в секрете):
c:\windows\system32\route.exe delete 55.78.16.20
c:\windows\system32\route.exe delete 55.78.16.0
del tmp.cmd
c:\windows\system32\route.exe print | grep.exe -m1 "^ *0.0.0.0" | sed.exe s/\x20\x20*/\t/g | cut.exe -f4 | sed "s/.*/c:\\windows\\system32\\route.exe add 55.78.16.20 mask 255.255.255.255 &/" > tmp.cmd
c:\windows\system32\route.exe print | grep "^ *172.16.0.1" | sed s/\x20\x20*/\t/g | cut -f4 | sed "s/.*/c:\\windows\\system32\\route.exe add 55.78.16.0 mask 255.255.255.0 &/" >> tmp.cmd
tmp.cmd
После установки подключения и выполнения сценария выше, подключения к моим серверам прошел через VPN, а все остальное прошло нормально.
Так как этот скрипт использует grep, sed и cut, я решил, что могу легко «перевести» его на linux. И я сделал это, за исключением того факта, что я немного не уверен, как использовать команду route
для правильной установки моего соединения.
P.S. Я также пытался настроить VPN с помощью диспетчера сети, но возникает тот же вопрос: как добавить маршруты?
Спасибо заранее
Прежде всего:
Вы использовали GNU
инструменты на окнах? Как WTH
человек.
Второе:
По сути, у вас есть два способа достичь одного и того же.
Первое - использовать команду ip
. Вы бы сделали что-то вроде ip route add ....
, хотя я немного староват и не люблю ip
, поэтому я не слишком уверен, как бы вы это сделали, но man ip
, безусловно, поможет вам в этом.
Второй - использовать более старую команду route
. При этом вы можете изменить таблицу маршрутизации ядра. Выпуск man route
в значительной степени скажет вам, что вам нужно делать, но для полноты картины это должно быть что-то вроде route add <target IP you want to reach> <interface that you want the target to be reached>
. Вы можете установить целевой IP для целых подсетей, но тогда вам придется добавить и шлюз для этого. (И настройте маршрут к этому шлюзу.)
О, и вы можете проверить свои интерфейсы как с ip
, так и с ifconfig
.
Дайте мне знать, как это работает для вас.
В OpenVPN вы можете сделать это тремя способами:
Во всех трех случаях это выглядит так:
route [routeaddress] [netmask]
, т.е.
route 172.92.3.0 255.255.0.0
Обратитесь к этой странице за подробностями.
http://openvpn.net/index.php/open-source/documentation/howto.html