LinuxForum.Fans
Тема

OpenVPN на Ubuntu Server - клиентам не отдаётся DNS

Автор: u___________4 9 сообщений 5130 просмотров
#202818

Здравствуйте. На Ubuntu Server 10.04 поднят OpenVPN. Сервис запущен со следующим конфигом:

port 5000
proto tcp
dev tap1
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/clients.crt
key /etc/openvpn/keys/clients.key
dh /etc/openvpn/keys/dh1024.pem
server-bridge 10.250.0.254 255.255.255.0 10.250.0.128 10.250.0.159
push "dhcp-option DNS 10.250.0.1"
comp-lzo
max-clients 6
keepalive 10 120
user vpn
group vpn
persist-key
persist-tun

status /tmp/openvpn-status.log
verb 2
log-append /var/log/openvpn.log

Как видите, после установки соединения клиент попадает в сеть 10.250.0.* и получает IP из неё по DHCP. При этом необходимо говорить клиенту что ему в качестве ещё одного DNS нужно использовать внутренний DNS этой сети (10.250.0.1). Но имеющаяся в конфиге опция "push dhcp-option..." почему-то не срабатывает. Клиент входит в сеть, получает нормальный IP, пингует сервера находящиеся в ней - всё отлично. Затем выполняет

nslookup inner-name

и старый его DNS отвечает что сервера inner-name нет. Внутренний DNS даже не опрашивается. При этом

nslookup inner-name 10.250.0.1

даёт необходимый результат. То есть DNS точно работает и верно отвечает.
Поскажите, в чём может быть причина? Эта проблема есть как у Linux-, так и у Windows-клиентов.

#202889

Белый Тигр, а сам сервер DNS в resolve.conf прописан?
Все опросы обычно ведутся по нему.

#202891

Нет, у клиентов он в resolv.conf так и не появляется.
Пробовал на этот вопрос ответ в поисковиках искать. Нашёл только одну тему, вроде на
ubuntuforums, но там вопрос так и остался без ответа. В остальных случаях пишут что
"push dhcp-option DNS...." работает отлично

#202894

Белый Тигр, в сети возможно сделать ориетацию по локали на VPN-сервер?
Если да, то тогда в файле сервера записываются адреса внешних/внутренних DNS, а клиенты просто ориентируются на сам сервер посредством локальной сети, попадая таким образом наружу.

#202898

Не совсем понимаю о чём Вы :rolleyes:
Ситуация такая. Есть клиенты, которые большую часть времени проводят вне VPN сети. Когда нужно поработать с её ресурсами, они подключаются к ней, выполняют с внутренними серверами всё что нужно. Доступа в интернет через эту VPN сеть они не имеют. Каждый ходит во вне через своё соединение с провайдером.

#202902

Белый Тигр, вы хотите им инет раздавать? Или что? :o
Если вы хотите их к домену привязать, значит настраивайте DNS-сервер, который будет обрабатывать запросы извне.

#202944

Нет. Мне просто нужно чтоб клиенты с помощью VPN попадали в закрытую сеть и работали с серверами которые в ней находятся. И вместе с этим нужно чтоб при подключении им отдавался дополнительный DNS, который знает адреса доменных имён этой закрытой сети.

#203108

Если хочешь что бы удаленные клиенты, которые подключились через pptp, получали еще и локальный DNS, то нужно подправить строчку в /etc/ppp/options.pptpd на предмет:

# Network and Routing

# If pppd is acting as a server for Microsoft Windows clients, this
# option allows pppd to supply one or two DNS (Domain Name Server)
# addresses to the clients. The first instance of this option
# specifies the primary DNS address; the second instance (if given)
# specifies the secondary DNS address.

ms-dns 192.168.1.77
ms-dns 192.168.3.223

Таким образом можно будет гулять по именам, если они добавлены в Ваш DNS. Ну Вы меня поняли. У меня именно так и работает.
Хотя для OpenVPN я хз как... Вполне устраивает pptp.

#203917

А в OpenVPN если не ошибаюсь less /etc/openvpn/update-resolv-conf этот скрип заглядывает в /etc/resolv.conf и выставляет dns такой какой сервер скажет)

Войдите или зарегистрируйтесь, чтобы ответить.