OpenVPN. Проблема с доступом к компьютерам в локальной сети сервера
Всех приветствую! Имеется развернутый на Windows 10 OpenVPN 2.5.6 сервер со следующей конфигурацией:
port 1194
proto udp
dev tun
topology subnet
ca "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\issued\\server.crt"
key "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\private\\server.key"
dh "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\dh.pem"
server 169.254.1.0 255.255.255.0
tls-auth "C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\ta.key" 0
cipher AES-256-GCM
keepalive 20 60
persist-key
persist-tun
client-to-client
status "C:\\Program Files\\OpenVPN\\log\\status.log"
log "C:\\Program Files\\OpenVPN\\log\\openvpn.log"
verb 3
mute 20
windows-driver wintun
user nobody
group nogroup
ifconfig-pool-persist ipp.txt
push "route 169.254.1.0 255.255.255.0"
push "route 192.168.5.0 255.255.255.0"
Компьютер находится в локальной сети 192.168.5.0, шлюз 192.168.5.1 (DNS, DHCP), со шлюза проброшен порт 1194 по TCP и UDP на сервер и обратно. Адрес компьютера в локальной сети - 192.168.9.3, в VPN сети - 169.254.1.1
Также есть клиент, подключающийся из интернета по статику со следующим конфигом:
client
dev tun
proto udp
remote *статик* 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert shulimovaa.crt
key shulimovaa.key
remote-cert-tls server
tls-auth ta.key 1
cipher AES-256-GCM
connect-retry-max 25
verb 3
Подключается всё успешно, присваивается адрес 169.254.1.2, сервер пингуется по IP VPN сети, но клиент не видит других ПК локальной сети, в которой физически находится сервер.
В регистре по параметр IPEnableRouter по пути "Компьютер\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" установлен в 1. На физическом интерфейсе разрешен общий доступ к подключению к интернету.
Маршрут также определяется на клиенте:
Сетевой адрес: 192.168.5.0
Маска сети: 255.255.255.0
Адрес шлюза: 169.254.1.1
Интерфейс: 169.254.1.2
Метрика: 291
Помогите, пожалуйста, решить проблему. Заранее спасибо!
Ответы (2 шт):
Для IPv4 в качестве link-local адресов выделена подсеть 169.254.0.0/16, нельзя ее использовать не по назначению.
Link-Local Address — адреса сети, которые предназначены только для коммуникаций в пределах одного сегмента местной сети или магистральной линии. Они позволяют обращаться к хостам, не используя общий префикс адреса.
Подсети link-local не маршрутизируются: маршрутизаторы не должны отправлять пакеты с адресами link-local в другие сети.
Адреса link-local часто используются для автоматического конфигурирования сетевого адреса, в случаях, когда внешние источники информации об адресах сети недоступны.
Типичное использование link-local адресов — автоматическое конфигурирование IP-адресов в локальных сетях Ethernet. Адрес из диапазона link-local назначается ОС хоста автоматически в случае недоступности других источников информации, например сервера DHCP.
Проблема решилась банальным созданием моста между физическим адаптером интернета и адаптером TAP, в конфиге выбрал в качестве адаптера мост и прописал маршрут до другой подсети. Всё работает :)