Openvpn'de DNS sunucusu nasıl tanımlanır?


17

Statik anahtarlı bir openvpn sunucusu ayarladım (ulusal ağ geçidindeki DPI nedeniyle sertifika modu kullanılamıyor), ancak bağlantıdan sonra DNS'yi otomatik olarak başarıyla değiştiremiyorum. İnternet ve SE üzerinde arama yaptım ve herkes bunu önerdi dhcp-option.

Bu satırı eklemeye çalıştım client.ovpn

dhcp-option DNS 8.8.8.8

Etkisi yok. Bu satırı sunucu konfresine eklemeye çalıştım

push "dhcp-option DNS 8.8.8.8"

İkisinin de etkisi yoktur.

Aslında, el kitabına göre,

--dhcp-seçenek türü [parm]

Genişletilmiş TAP-Win32 TCP / IP özelliklerini ayarlama, --ip-win32 dinamik veya --ip-win32 uyarlamalı ile kullanılmalıdır.

Ama istemcim bir Mac makinesi, sunucu Linux. Soruna çözüm var mı?


1
OSX makinesinde hangi istemciyi kullandığınızı belirtmelisiniz.
FloHimself

2
@FloHimself: Standart komut satırı yardımcı programı openvpn.
Siyuan Ren

Yanıtlar:


7

Bir Linux sisteminde, harici bir komut dosyası çalıştırmanız gerekir .

İşte belgeler: https://wiki.archlinux.org/index.php/OpenVPN#DNS

Komut bulunur burada ya da daha yeni Linux sürümü burada ve openvpn istemci yapılandırmasına bu ekleyerek onları arayabilirsiniz:

script-security 2
up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf

1
Linux lezzetiniz NetworkManager kullanıyorsa, üzerinde çalışılacak değişikliklerenmcli bakın .
palswim

5

Uzman değilim, ancak manteklifinizin altındaki sayfayı okurken :

--dhcp-seçenek türü [parm]

...

Eğer Not --dhcp-seçeneği olmayan bir pencere müşteriye --push yoluyla itilir kadar komut dosyası çağrılmadan önce, opsiyon adı "foreign_option_ {n}" başlığı altında, müşterinin ortamında kaydedilir.

ve foreign_option_ {n} altında :

foreign_option_ {n}

Windows dışındaki bir sistemde --dhcp seçeneği gibi yerel olarak desteklemeyen bir istemciye --push aracılığıyla aktarılan bir seçenek, --up komut dosyası yürütülmeden önce bu çevresel değişken dizisine kaydedilir .

Bu nedenle, komut satırı openvpnistemcisi bağlantıyı kurduktan sonra OSX makinenizdeki DNS kurulumunu otomatik olarak değiştirmez. Ancak, DNS seçenekleri istemcinin ortamına kaydedildiğinden, aktarılan sunucuları sistemin şu anki DNS yapılandırmasına eklemek için şu komutla bir komut dosyası belirtebilirsiniz --up:

--up cmd

Başarılı TUN / TAP cihazı açıldıktan sonra cmd komutunu çalıştırın (kullanıcı öncesi UID değişikliği).

cmd, isteğe bağlı olarak argümanlar izleyen bir komut dosyası (veya yürütülebilir program) yolundan oluşur. Yol ve bağımsız değişkenler, ters eğik çizgi kullanılarak tek veya çift tırnaklı olabilir ve / veya kaçabilir ve bir veya daha fazla boşlukla ayrılmalıdır.

Örneğin, Tunnelblick bunu bu komut dosyasını kullanarak da yapar .

Başka bir çözüm , OS X istemcileri için DNS'deki openvpn posta listesine gönderilen Kesin Kılavuz olabilir .


İPhone ne olacak? Jailbreak yapmadan, DNS'yi otomatik olarak değiştirmek için bash veya herhangi bir komut olmadığını hayal ediyorum.
Siyuan Ren

@SiyuanRen Jailbraking olmadan muhtemelen iPhone'da komut satırı openvpn istemcisini
kullanmıyorsunuz

Resmi openvpn uygulaması sadece bir metin yapılandırma dosyası yükler ve çalıştırır. Artık işlevsellik yok.
Siyuan Ren

@SiyuanRen Peki, resmi openvpn uygulaması burada tartışılan komut satırı uygulaması değil.
FloHimself

Bu bir hile gibi geliyor. PPTP veya L2TP ile bağlandığımda, Ağ tercihlerinde yalnızca IP ve DNS'leri olan özel bir arayüz var. OpenVPN diğer arayüzlerin DNS ayarlarını değiştirmemi mi istiyor ?
Siyuan Ren

4

Hem Linux OS (sunucu hem de istemci) ile aynı sorunu yaşadım ve eksik olan sunucuya dnsmasq yükleyerek çözdüm

benim adımlarım:

apt-get install dnsmasq

server.conf içinde

push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4"

DNS setleriyle NetWorkManager ile otomatik olarak bağlantı kurarak sunucu IP'si üzerinden etki alanlarına bağlanabilir ve göz atabilirim


-1

Bu komutu istemci tarafı conf dosyanıza ekleyin.

# put actual dns name here
dhcp-option DNS 10.11.12.13 

Kesinlikle işe yarayacak ..

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.