Рейтинг:0

Маршрутизация OpenVPN между подсетями и локальной сетью не работает

флаг cn

Я настроил сервер openVPN с подсетью топологии. Он содержит набор подсетей для клиентов в регионе 10.0.X.X, которые маршрутизируются. В сети сервера есть клиент (не в VPN), который запускает службу, к которой должны получить доступ пользователи VPN.

Поэтому в основном я пытаюсь предоставить разным группам пользователей доступ к веб-сервису. И openvpn, и веб-сервис работают в экземплярах докеров.

ЛЮБАЯ ПОМОЩЬ ИЛИ СОВЕТ ОЧЕНЬ ЦЕННЫ, ТАК КАК Я БОРЮСЬ С ЭТИМ НАЧИНАЯ 2 НЕДЕЛИ СЕЙЧАС

Предпринятые шаги: Я настраиваю openvpn conf с маршрутами и с клиент-клиентом

сервер 192.168.255.0 255.255.255.0
глагол 3
ключ /etc/openvpn/pki/private/xxxx.key
ca /etc/openvpn/pki/ca.crt
сертификат /etc/openvpn/pki/выпущенный/xxxx.crt
дх /etc/openvpn/pki/dh.pem
tls-аутентификация /etc/openvpn/pki/ta.key
ключевое направление 0
поддержка 10 60
постоянный ключ
упорный тун

прото удп
# Полагайтесь на Docker для сопоставления портов, внутренне всегда 1194
порт 1194
разработчик тун
статус /tmp/openvpn-status.log
топология подсети
клиент-конфигурация-каталог ccd

пользователь никто
группа
комп-лзо нет
клиент-клиент

### Конфигурации маршрута ниже
маршрут 192.168.254.0 255.255.255.0
маршрут 10.0.0.0 255.255.255.0
маршрут 10.0.1.0 255.255.255.0
маршрут 10.0.3.0 255.255.255.0
маршрут 10.0.4.0 255.255.255.0
маршрут 10.0.5.0 255.255.255.0

### Отправка конфигураций ниже
#push "заблокировать внешний DNS"
нажмите "dhcp-опция DNS 8.8.8.8"
нажмите «dhcp-опция DNS 8.8.4.4»
нажать "комп-лзо нет"
нажмите "маршрут 172.17.0.0 255.255.255.0"

Я настроил переадресацию, установив net.ipv4.ip_forward = 1 в /etc/sysctl.conf

Я настроил правила iptable

-P ВВОД ПРИНЯТЬ
-P ВПЕРЕД ПРИНЯТЬ
-P ВЫВОД ПРИНЯТЬ
-A ВПЕРЕД -s 192.168.255.0/24 -d 172.17.0.0/24 -i tun0 -j ПРИНЯТЬ
-A ВПЕРЕД -j ПРИНЯТЬ
-A FORWARD -s 192.168.255.0/24 -d 10.0.0.0/24 -i tun0 -j ПРИНЯТЬ

Но с IP-адреса в диапазоне серверов (192.168.255.2) я не могу пропинговать или получить доступ к чему-либо (172.17.0.4 или 10.0.0.1)

Трассировка заканчивается на шлюзе

% трассировки 10.0.0.1
traceroute до 10.0.0.1 (10.0.0.1), не более 64 переходов, пакеты по 52 байта
1 192.168.88.1 (192.168.88.1) 12,279 мс 3,251 мс 1,882 мс
2 *

вот еще лог от моего клиента

2022-04-30 06:24:38.983758 *Tunnelblick: macOS 12.3.1 (21E258); Tunnelblick 3.8.5beta05 (сборка 5650)
2022-04-30 06:24:39.446714 * Tunnelblick: попытка подключения к greenhive_master с использованием теневой копии; Установить сервер имен = 769; контрольное соединение
2022-04-30 06:24:39.450786 *Tunnelblick: запуск openvpnstart greenhive_master.tblk 52399 769 0 1 0 34652464 -ptADGNWradsgnw 2.4.10-openssl-1.1.1j
2022-04-30 06:24:39.477788 *Tunnelblick: openvpnstart запускает OpenVPN
2022-04-30 06:24:39.857743 OpenVPN 2.4.10 x86_64-apple-darwin [SSL (OpenSSL)] [LZO] [LZ4] [PKCS11] [MH/RECVDA] [AEAD] построен 25 февраля 2021 г.
2022-04-30 06:24:39.857947 версии библиотеки: OpenSSL 1.1.1j 16 февраля 2021 г., LZO 2.10
2022-04-30 06:24:39.859534 УПРАВЛЕНИЕ: TCP-сокет прослушивает [AF_INET] 127.0.0.1:52399
2022-04-30 06:24:39.859562 Необходимо удерживать освобождение от интерфейса управления, ожидание...
2022-04-30 06:24:40.078894 * Tunnelblick: журнал openvpnstart:
     OpenVPN успешно запущен.
     Команда, используемая для запуска OpenVPN (один аргумент на отображаемую строку):
          /Applications/Tunnelblick.app/Contents/Resources/openvpn/openvpn-2.4.10-openssl-1.1.1j/openvpn
          --демон
          --log /Library/Application Support/Tunnelblick/Logs/-SUsers-Srobertk-SLibrary-SApplication Support-STunnelblick-SConfigurations-Sgreenhive_master.tblk-SContents-SResources-Sconfig.ovpn.769_0_1_0_34652464.52399.openvpn.log
          --cd /Library/Application Support/Tunnelblick/Users/robertk/greenhive_master.tblk/Contents/Resources
          --машиночитаемый-выход
          --setenv IV_GUI_VER "net.tunnelblick.tunnelblick 5650 3.8.5beta05 (сборка 5650)"
          --глагол 3
          --config /Library/Application Support/Tunnelblick/Users/robertk/greenhive_master.tblk/Contents/Resources/config.ovpn
          --setenv TUNNELBLICK_CONFIG_FOLDER /Library/Application Support/Tunnelblick/Users/robertk/greenhive_master.tblk/Contents/Resources
          --глагол 3
          --cd /Library/Application Support/Tunnelblick/Users/robertk/greenhive_master.tblk/Contents/Resources
          --management 127.0.0.1 52399 /Library/Application Support/Tunnelblick/geeielmngfddkiiidnhcaaaogadlpdifnpjaepip.mip
          --management-query-passwords
          --management-hold
          --script-безопасность 2
          --route-up /Applications/Tunnelblick.app/Contents/Resources/client.up.tunnelblick.sh -9 -d -f -m -w -ptADGNWradsgnw
          --down /Applications/Tunnelblick.app/Contents/Resources/client.down.tunnelblick.sh -9 -d -f -m -w -ptADGNWradsgnw
2022-04-30 06:24:40.108790 УПРАВЛЕНИЕ: Клиент подключен из [AF_INET]127.0.0.1:52399
2022-04-30 06:24:40.136505 УПРАВЛЕНИЕ: CMD 'pid'
2022-04-30 06:24:40.136565 УПРАВЛЕНИЕ: CMD «повторить попытку взаимодействия»
2022-04-30 06:24:40.136595 УПРАВЛЕНИЕ: CMD «состояние включено»
2022-04-30 06:24:40.136615 УПРАВЛЕНИЕ: CMD 'состояние'
2022-04-30 06:24:40.136655 УПРАВЛЕНИЕ: CMD 'счетчик байтов 1'
2022-04-30 06:24:40.138068 *Tunnelblick: Установлена ​​связь с OpenVPN
2022-04-30 06:24:40.152091 * Tunnelblick: > ИНФОРМАЦИЯ: интерфейс управления OpenVPN версии 1 — введите «помощь» для получения дополнительной информации
2022-04-30 06:24:40.154175 МЕНЕДЖМЕНТ: CMD 'задержать освобождение'
2022-04-30 06:24:40.155529 ПРИМЕЧАНИЕ. Текущий параметр --script-security может разрешить этой конфигурации вызывать пользовательские сценарии.
2022-04-30 06:24:40.161486 Аутентификация исходящего канала управления: использование 160-битного хэша сообщения «SHA1» для аутентификации HMAC
2022-04-30 06:24:40.161545 Аутентификация входящего канала управления: использование 160-битного хэша сообщения «SHA1» для аутентификации HMAC
2022-04-30 06:24:40.161718 УПРАВЛЕНИЕ: >СОСТОЯНИЕ:1651292680,РЕШЕНИЕ,,,,,,
2022-04-30 06:24:40.259123 TCP/UDP: сохранение недавно использованного удаленного адреса: [AF_INET]xx.xx.xx.xx:1194
2022-04-30 06:24:40.259272 Буферы сокетов: R=[786896->786896] S=[9216->9216]
2022-04-30 06:24:40.259296 Локальная ссылка UDP: (не привязана)
2022-04-30 06:24:40.259311 Удаленная ссылка UDP: [AF_INET]xx.xx.xx.xx:1194
2022-04-30 06:24:40.259354 УПРАВЛЕНИЕ: >СОСТОЯНИЕ: 1651292680, ПОДОЖДИТЕ,,,,,,
2022-04-30 06:24:40.305386 УПРАВЛЕНИЕ: >СОСТОЯНИЕ: 1651292680,AUTH,,,,,,
2022-04-30 06:24:40.305631 TLS: исходный пакет из [AF_INET]xx.xx.xx.xx:1194, sid=06c4262e 884c5cdc
2022-04-30 06:24:40.369493 ПРОВЕРИТЬ ОК: depth=1, CN=greenhive
2022-04-30 06:24:40.370236 ПРОВЕРИТЬ КУ ОК
2022-04-30 06:24:40.370275 Проверка использования расширенного ключа сертификата
2022-04-30 06:24:40.370301 ++ Сертификат имеет EKU (str) Аутентификация веб-сервера TLS, ожидает аутентификацию веб-сервера TLS
2022-04-30 06:24:40.370323 ПРОВЕРИТЬ ЭКУ ОК
2022-04-30 06:24:40.370346 ПРОВЕРИТЬ ОК: глубина = 0, CN = VPN.greenhive.at
2022-04-30 06:24:40.439317 ВНИМАНИЕ: 'link-mtu' используется непоследовательно, local='link-mtu 1541', remote='link-mtu 1542'
2022-04-30 06:24:40.439596 ПРЕДУПРЕЖДЕНИЕ: 'comp-lzo' присутствует в удаленной конфигурации, но отсутствует в локальной конфигурации, remote='comp-lzo'
2022-04-30 06:24:40.439767 Канал управления: TLSv1.3, шифр TLSv1.3 TLS_AES_256_GCM_SHA384, 2048-битный RSA
2022-04-30 06:24:40.439834 [VPN.greenhive.at] Одноранговое соединение, инициированное с помощью [AF_INET]xx.xx.xx.xx:1194
2022-04-30 06:24:41.558800 УПРАВЛЕНИЕ: >СОСТОЯНИЕ:1651292681,GET_CONFIG,,,,,,
2022-04-30 06:24:41.559492 ОТПРАВЛЕННОЕ УПРАВЛЕНИЕ [VPN.greenhive.at]: «PUSH_REQUEST» (статус = 1)
2022-04-30 06:24:41.652600 PUSH: получено управляющее сообщение: «PUSH_REPLY, dhcp-option DNS 8.8.8.8, dhcp-option DNS 8.8.4.4, comp-lzo no, route 172.17.0.0 255.255.255.0, route- шлюз 192.168.255.1, топология подсети, ping 10, ping-restart 60, ifconfig 192.168.255.2 255.255.255.0, идентификатор узла 1, шифр AES-256-GCM'
2022-04-30 06:24:41.652921 ИМПОРТ ПАРАМЕТРОВ: изменены таймеры и/или таймауты
2022-04-30 06:24:41.652958 ИМПОРТ ПАРАМЕТРОВ: параметры сжатия изменены
2022-04-30 06:24:41.652985 ИМПОРТ ПАРАМЕТРОВ: параметры --ifconfig/up изменены
2022-04-30 06:24:41.653008 ИМПОРТ ПАРАМЕТРОВ: параметры маршрута изменены
2022-04-30 06:24:41.653030 ИМПОРТ ПАРАМЕТРОВ: изменены параметры, связанные с маршрутом
2022-04-30 06:24:41.653051 ИМПОРТ ПАРАМЕТРОВ: параметры --ip-win32 и/или --dhcp-option изменены
2022-04-30 06:24:41.653072 ИМПОРТ ПАРАМЕТРОВ: набор одноранговых идентификаторов
2022-04-30 06:24:41.653094 ИМПОРТ ПАРАМЕТРОВ: настройка link_mtu на 1624
2022-04-30 06:24:41.653115 ИМПОРТ ПАРАМЕТРОВ: изменены параметры шифрования канала данных
2022-04-30 06:24:41.653139 Канал данных: используется согласованный шифр "AES-256-GCM"
2022-04-30 06:24:41.653816 Канал исходящих данных: шифр AES-256-GCM инициализирован с 256-битным ключом
2022-04-30 06:24:41.653851 Канал входящих данных: шифр AES-256-GCM инициализирован с 256-битным ключом
2022-04-30 06:24:41.654722 Открытие utun (connect(AF_SYS_CONTROL)): ресурс занят (errno=16)
2022-04-30 06:24:41.654977 Открытие utun (connect(AF_SYS_CONTROL)): ресурс занят (errno=16)
2022-04-30 06:24:41.655036 Открытие utun (connect(AF_SYS_CONTROL)): ресурс занят (errno=16)
2022-04-30 06:24:41.655181 Открытое устройство utun utun3
2022-04-30 06:24:41.655203 УПРАВЛЕНИЕ: >СОСТОЯНИЕ: 1651292681,ASSIGN_IP,,192.168.255.2,,,,
2022-04-30 06:24:41.655217 /sbin/ifconfig utun3 удалить
                           ifconfig: ioctl (SIOCDIFADDR): невозможно назначить запрошенный адрес
2022-04-30 06:24:41.665109 ПРИМЕЧАНИЕ. Попытка удалить ранее существовавший экземпляр tun/tap -- Нет проблем в случае сбоя
2022-04-30 06:24:41.666818 /sbin/ifconfig utun3 192.168.255.2 192.168.255.2 сетевая маска 255.255.255.0 mtu 1500 вверх
2022-04-30 06:24:41.672645 /sbin/route add -net 192.168.255.0 192.168.255.2 255.255.255.0
                           добавить сеть 192.168.255.0: шлюз 192.168.255.2
2022-04-30 06:24:41.679237 УПРАВЛЕНИЕ: >СОСТОЯНИЕ: 1651292681,ADD_ROUTES,,,,,,
2022-04-30 06:24:41.679318 /sbin/route add -net 172.17.0.0 192.168.255.1 255.255.255.0
                           добавить сеть 172.17.0.0: шлюз 192.168.255.1
                           06:24:41 *Tunnelblick: ************************************************* ****
                           06:24:41 *Tunnelblick: начало вывода из client.up.tunnelblick.sh
                           06:24:43 *Tunnelblick: получено из OpenVPN: сервер(ы) имен [ 8.8.8.8 8.8.4.4 ], домен(ы) поиска [ ] и сервер(ы) SMB [ ] и использование доменного имени по умолчанию [ openvpn ]
                           06:24:44 * Tunnelblick: ПРЕДУПРЕЖДЕНИЕ: Игнорирование имени домена «openvpn», поскольку имя домена было задано вручную, а параметр «-allowChangesToManuallySetNetworkSettings» не указан
                           06:24:44 * Tunnelblick: ПРЕДУПРЕЖДЕНИЕ. Игнорирование адресов серверов «8.8.8.8 8.8.4.4», поскольку адреса серверов были установлены вручную, а параметр «-allowChangesToManuallySetNetworkSettings» не указан.
                           06:24:44 * Tunnelblick: установка доменов поиска на «8.8.8.8 8.8.4.4», поскольку домены поиска не были установлены вручную (или разрешено изменять) и не был выбран параметр «Добавлять имя домена к доменам поиска».
                           06:24:45 *Tunnelblick: Сохранены конфигурации DNS и SMB, чтобы их можно было восстановить.
                           06:24:45 * Tunnelblick: настройка DNS ServerAddresses «8.8.8.8 8.8.4.4» не изменена (но установлена ​​заново)
                           06:24:45 * Tunnelblick: настройка DNS SearchDomains изменена с «openvpn» на «8.8.8.8 8.8.4.4».
                           06:24:45 * Tunnelblick: настройка имени домена DNS изменена с '' на '8.8.8.8 8.8.4.4'
                           06:24:45 *Tunnelblick: не изменялась настройка SMB NetBIOSName ''
                           06:24:45 * Tunnelblick: не менялись настройки рабочей группы SMB ''
                           06:24:45 *Tunnelblick: не изменялась настройка SMB WINSAddresses ''
                           06:24:45 * Tunnelblick: DNS-серверы «8.8.8.8 8.8.4.4» были установлены вручную
                           06:24:45 *Tunnelblick: DNS-серверы «8.8.8.8 8.8.4.4» будут использоваться для DNS-запросов, когда VPN активна.
                           06:24:45 *Tunnelblick: DNS-серверы включают только бесплатные общедоступные DNS-серверы, известные Tunnelblick.
                           06:24:45 *Tunnelblick: сброс кэша DNS с помощью dscacheutil.
                           06:24:45 *Tunnelblick: /usr/sbin/discoveryutil отсутствует. Не сбрасывать кеш DNS через discoveryutil
                           06:24:45 * Tunnelblick: mDNSResponder уведомлен о том, что кеш DNS очищен
                           06:24:45 * Tunnelblick: не уведомлять mDNSResponderHelper о том, что кеш DNS был очищен, потому что он не запущен
                           06:24:45 *Tunnelblick: Настройка мониторинга конфигурации системы с помощью изменений в сети.
                           06:24:45 *Tunnelblick: конец вывода из client.up.tunnelblick.sh
                           06:24:45 *Tunnelblick: ************************************************ ****
2022-04-30 06:24:45.352811 ПРЕДУПРЕЖДЕНИЕ: эта конфигурация может кэшировать пароли в памяти — используйте параметр auth-nocache, чтобы предотвратить это.
2022-04-30 06:24:45.352830 Последовательность инициализации завершена
2022-04-30 06:24:45.352845 УПРАВЛЕНИЕ: >СОСТОЯНИЕ:1651292685,ПОДКЛЮЧЕНО,УСПЕХ,192.168.255.2,xx.xx.xx.xx,1194,,
2022-04-30 06:24:46.571157 *Tunnelblick: Информация о маршрутизации stdout:
   маршрут до: 8.8.4.4
пункт назначения: 8.8.4.4
    шлюз: 192.168.88.1
  интерфейс: en0
      флаги: <UP, GATEWAY, HOST, DONE, WASCLONED, IFSCOPE, IFREF, GLOBAL>
 recvpipe sendpipe ssthresh rtt, msec rttvar hopcount mtu expire
       0 0 0 0 0 0 1500 0 
стандартный:

2022-04-30 06:24:46.593014 * Tunnelblick: Предупреждение. Адрес DNS-сервера 8.8.4.4 — известный общедоступный DNS-сервер, но он не маршрутизируется через VPN
2022-04-30 06:24:46.680197 *Tunnelblick: Информация о маршрутизации stdout:
   маршрут до: 8.8.8.8
пункт назначения: 8.8.8.8
    шлюз: 192.168.88.1
  интерфейс: en0
      флаги: <UP, GATEWAY, HOST, DONE, WASCLONED, IFSCOPE, IFREF, GLOBAL>
 recvpipe sendpipe ssthresh rtt, msec rttvar hopcount mtu expire
       0 0 0 0 0 0 1500 0 
стандартный:

2022-04-30 06:24:46.705581 * Tunnelblick: Предупреждение. Адрес DNS-сервера 8.8.8.8 — известный общедоступный DNS-сервер, но он не маршрутизируется через VPN

РЕДАКТИРОВАТЬ: здесь ip маршрут сервера

bash-5.0# IP-маршрут 
по умолчанию через 172.17.0.1 dev eth0 
10.0.0.0/24 через 192.168.255.2 dev tun0 
10.0.1.0/24 через 192.168.255.2 dev tun0 
10.0.3.0/24 через 192.168.255.2 dev tun0 
172.17.0.0/16 dev eth0 ссылка на область ядра proto src 
172.17.0.2 192.168.254.0/24 через 192.168.255.2 dev tun0 192.168.255.0/24 dev tun0 ссылка на область ядра прото src 192.168.255.1

клиента

172.17/24 192.168.255.2 УГск утун3

Журнал состояния

bash-5.0# кошка /tmp/openvpn-status.log
СПИСОК КЛИЕНТОВ OpenVPN
Обновлено, вс 1 мая 08:20:48 2022
Обычное имя, реальный адрес, байты получены, байты отправлены, подключено с
at_dev_1,179.115.236.15:34846,23335,23021,Вс 1 мая 07:14:26 2022
мастер,179.115.236.15:64773,9574,9889,Вс 1 мая 07:55:44 2022
ТАБЛИЦА МАРШРУТИЗАЦИИ
Виртуальный адрес, обычное имя, реальный адрес, последняя ссылка
192.168.255.2,мастер,179.115.236.15:64773,Вс 1 мая 07:55:44 2022
10.0.0.1,at_dev_1,179.115.236.15:34846,Вс 1 мая 07:14:26 2022
ГЛОБАЛЬНАЯ СТАТИСТИКА
Максимальная длина очереди bcast/mcast,1
КОНЕЦ

РЕДАКТИРОВАТЬ здесь изображение, чтобы показать ситуацию Графическое объяснение

Nikita Kipriyanov avatar
флаг za
Пожалуйста, покажите вывод `ip route` уязвимых систем, когда установлено VPN-подключение, и вывод команды `status` в интерфейсе управления OpenVPN (чтобы показать внутренние маршруты и другое состояние). Вы можете замаскировать общедоступные IP-адреса, но абсолютно оставить все частные адреса такими, какие они есть. Я также хочу отметить, что «топология» не имеет ничего общего с тем, как вы прокладываете сети вне OpenVPN. Он только настраивает свою внутреннюю работу. Режим `topology subnet` делает сам OpenVPN маршрутизатором, что требует настройки в нем *внутренних* маршрутов с помощью команд `iroute`, которые входят в файлы CCD.
Nikita Kipriyanov avatar
флаг za
Пожалуйста, поместите свой вывод маршрутизации в вопрос [редактированием] (https://serverfault.com/posts/1099885/edit) и удалите из комментария; он разбивает новые строки в комментарии, поэтому его невозможно прочитать. Также я запросил вывод `статуса` *управления*. Он показывает внутренности, которые нам нужны здесь. Это важно в режиме «подсети», потому что он покажет таблицу маршрутизации, внутреннюю для самого процесса OpenVPN. // Заметьте, я говорил о `iroute`, а не о push-маршруте и так далее.Прочитайте `man openvpn` об этой команде и о том, что она делает.
Robert Driller avatar
флаг cn
Извините за это, я поправил это. Я также кое-что почитал на iroute. Пожалуйста, поправьте меня, если я ошибаюсь, но я понимаю, что это специальная маршрутизация на случай, если я хочу подключиться к адресу, который «доступен» через VPN **клиент**. Но поскольку адрес, с которым я хочу связаться, находится в локальной сети VPN **сервера**, и я хочу, чтобы все клиенты могли связаться с ним, не является ли правильным путем проталкивание маршрута? Я получил это от https://backreference.org/2009/11/15/openvpn-and-iroute/index.html.
Nikita Kipriyanov avatar
флаг za
Да, пишу ответ с пояснениями. Это не совсем «спрятано за клиентом», но это маршрутизация, которая происходит внутри процесса OpenVPN на сервере.
Рейтинг:0
флаг za

Итак, мы видим, что у вас нет внутренних маршрутов внутри OpenVPN. Вероятно, это связано с тем, что вы не используете маршрут операторы в вашей конфигурации. Поэтому друг другу доступны только VPN-адреса сервера и клиентов.

Общая структура VPN «подсети топологии» OpenVPN выглядит следующим образом с точки зрения сети (OSI L3):

                                          192.168.255.10[tun] (client2) [eth] 10.0.2.1 --- ...
                                                   |
                                              [клиент2].9 [eth] 10.0.1.1 --- ...
(сервер) [tun]192.168.255.1 --- .2[server] (процесс OpenVPN) [client1].5 --- 192.168.255.6[tun] (client1)
[eth] 10.0.0.1 --- ... .13[client3]
                                                   |
         ... --- 10.0.3.1 [eth] (client3) [tun]192.168.255.14

В этом примере с тремя клиентами процесс OpenVPN выглядит как маршрутизатор с четырьмя интерфейсами (один обращен к серверу). Этот роутер тоже нуждается в настройке маршрутизации! Это то, что маршрут ключевое слово делает.

Таким образом, для доступа клиентов к сети 10.0.0.0/24 за сервером, им нужен маршрут к этой сети через соответствующий клиентский «адрес» OpenVPN (например, client1 нужен ip маршрут добавить 10.0.0.0/24 через 192.168.255.5). Эти маршруты вы нажимаете с помощью «push route». Для доступа к сетям, находящимся позади других клиентов, вы создаете аналогичные маршруты; в моем примере эти сети являются последовательными, и все они могут быть объединены в один нажмите "маршрут 10.0.0.0 255.255.252.0".

Также «маршрутизатору» OpenVPN нужны соответствующие маршруты к этим сетям через «клиентские» адреса. Например, сеть 10.0.1.0/24 должна маршрутизироваться через 192.168.255.6. Для этого на сервере должен быть запущен маршрут 10.0.1.0 255.255.255.0 от имени клиент1. Для этого вы ставите

маршрут 10.0.1.0 255.255.255.0

в клиент1 файл в каталоге конфигурации клиента (CCD), поэтому он выполняется сразу после клиента с общим именем клиент1 успешно проходит аутентификацию.

Сети за сервером не нужны маршрут. Кажется, он использует серверный «интерфейс» в качестве шлюза последней инстанции.

Robert Driller avatar
флаг cn
Большое спасибо за подробный ответ, просто чтобы убедиться, что я правильно понял. Информации о маршрутизации на стороне клиента через push-маршрут недостаточно, серверу тоже нужна маршрутизация с использованием iroute непосредственно в конфиге сервера. Я добавил iroute наподобие этого `iroute 172.17.0.0 255.255.255.0` в конфигурацию сервера, но при запуске openVPN он говорит мне, что: `Ошибка параметров: опция 'iroute' не может использоваться в этом контексте (/etc/openvpn/ openvpn.conf) Используйте --help для получения дополнительной информации. Я неправильно понял ваш последний абзац?
Nikita Kipriyanov avatar
флаг za
Да потому что это неправильно. Это напоминает мне, что я должен всегда перечитывать руководство, даже если я уже много раз его читал. Кажется, он маршрутизируется через сервер по умолчанию, например. он использует сервер в качестве шлюза последней инстанции. Это объясняет, почему подсети серверов не нуждаются в маршрутах. Что касается вашей первоначальной проблемы, так это то, что вы каким-то образом дали своим клиентам адреса, несовместимые с сетью VPN. Подсети — это сети /30, выделенные из адресного пространства VPN; если вы выбрали «192.168.255.1 255.255.255.0» в качестве IP-адреса сервера, ваши клиенты будут иметь 192.168.255.6/30, .10, .14 и т. д., назначенные их интерфейсу «tun».
Robert Driller avatar
флаг cn
Жаль, что ты потерял меня там. Я понимаю, что каждая из моих подсетей (10.0.1.0/24, 10.0.2.0/24, 10.0.3.0/24 и т. д.) имеет интерфейс tun, которому назначен пробел /30. Означает ли это, что возможно только 127 подсетей, поскольку каждая резервирует 2 адреса? А если вся связь идет через сервер, то почему бы ему не направить мой звонок на адрес 172.14.0.4 за oVPN-сервером?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.