Advertisement
Guest User

Untitled

a guest
Dec 12th, 2019
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 3.17 KB | None | 0 0
  1. Заново пробовал решение уже на Гиге, и вроде бы все должно работать, трафик красится, трассировка показывает, что пакеты к избранным ресурсам улетают в нужном направлении в туннель, но в браузере они почему-то не открывались. Но при обычном добавлении IP адреса избранного ресурса в WebGui Кинетика на странице Маршрутизация в статический маршрут через OpenVPN все открывалось очень стабильно и быстро.
  2.  
  3. Добавил я адреса всех ресурсов, которыми пользуюсь и успокоился. Но не тут то было, на следующий день пробую открыть сайт - получаю заглушку провайдера. Видимо у сайта сменился IP адрес. Ведь идет война, хоть ее и не видно особо. Но мне это лишь дало понять, что мне нужно автоматизированное средство добавления маршрутов. В результате написал вот такой не сложный скрипт, который настроил на ежечасное выполнение по cron
  4.  
  5. # cat /opt/etc/cron.hourly/1-unblock-static-route
  6. #!/bin/sh
  7. for i in `cat /opt/root/vpnsitelist.txt`; do
  8.     #по каждой строке из файла с ресурсами (FQDN), на которые нужно подключаться через VPN сервер
  9.         #получаем только результаты резолвинга и их добавляем в качестве статического маршрута через интерфейс ovpn_br0
  10.         for j in `nslookup $i | egrep -v 192.168.1.1 | awk '/Addr/ {print $3}' | grep -v ":"`; do
  11.                 EXISTS=`ip route show $j | wc -l`
  12.                 #выполняем проверку, есть ли текущий IP адрес в нашей таблице статических маршрутов
  13.                 if [ $EXISTS -eq 0 ]
  14.                 then
  15.                         #адреса нет, добавляем
  16.                         route add -host $j dev ovpn_br0
  17.                         logger "Add $j host to static route to unblock $i"
  18.                 fi
  19.                 if [ $EXISTS -eq 1 ]
  20.                 then
  21.                         #адреса адрес есть, ничего не делаем
  22.                         logger "Host $j is already in static route to unblock $i"
  23.                 fi
  24.         done
  25. done
  26. exit 0
  27.  
  28. А еще лучше разместить скрипт вот тут  /opt/etc/ndm/openvpn-up.d/ и сделать симлинк в крон
  29.  
  30. # ln -s /opt/etc/ndm/openvpn-up.d/1-unblock-static-route /opt/etc/cron.hourly/01unblock
  31. # ls -ls /opt/etc/cron.hourly/
  32.      0 lrwxrwxrwx    1 root     root            48 Nov 19 22:27 01unblock -> /opt/etc/ndm/openvpn-up.d/1-unblock-static-route
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement