Openvpn için musluk kullanmalı mıyım?


85

Openvpn için dev tap ve dev tun kullanımı arasındaki farklar nelerdir? Farklı modların çalışamayacağını biliyorum. Teknik farklar nedir, diğerleri sadece katman 2 vs 3 işleminden sonra. Farklı performans özellikleri veya genel giderler var mı? Hangi mod daha iyi. Hangi fonksiyonlar sadece her modda mevcut.


Lütfen farkı açıkla? Ethernet köprüleme nedir ve neden kötü?
Thomaschaaf

Yanıtlar:


74

katman 3'te vpn oluşturmak tamamsa (alt ağlar arasında bir atlama daha) - tun için gidin.

iki ethernet segmentini iki farklı yere köprülemeniz gerekiyorsa, musluk kullanın. Böyle bir kurulumda vpn'nin her iki ucunda da aynı ip alt ağında (örneğin 10.0.0.0/24) bilgisayarlara sahip olabilirsiniz ve yönlendirme tablolarında herhangi bir değişiklik yapmadan doğrudan birbirleriyle 'konuşabilecekler'. vpn ethernet anahtarı gibi davranacaktır. Bu kulağa hoş gelebilir ve bazı durumlarda yararlı olabilir, ancak gerçekten ihtiyacınız olmadıkça, bunun için gitmemenizi tavsiye ederim. Böyle bir katman 2 köprüleme kurulumunu seçerseniz - vpn'nizden geçen bir miktar 'çöp' olacak (yayın paketleri).

musluğu kullanarak biraz daha fazla ek yüke sahip olacaksınız - ip başlıklarının yanı sıra 38B veya daha fazla ethernet başlığı da tünelden gönderilecek (trafiğinizin türüne bağlı olarak - muhtemelen daha fazla parçalanma getirecektir).


24

Ofisinde Windows makineleri, ticari yazıcılar ve bir Samba dosya sunucusu kullandığı için küçük işletme sahibi bir arkadaş için VPN kurarken "dokunma" ı seçtim. Bazıları saf TCP / IP kullanıyor, bazıları iletişim kurmak için yalnızca NetBIOS kullanıyor (ve dolayısıyla Ethernet yayın paketlerine ihtiyaç duyuyor) ve bazıları emin değilim.

Eğer "tun" ı seçseydim, muhtemelen çok sayıda bozuk hizmetle karşılaşacaktım - ofiste fiziksel olarak çalışırken birçok şey işe yaradı, ama sonra saha dışına çıktığınızda ve dizüstü bilgisayarınız "göremediğinde" kırılırdı. Ethernet alt ağındaki cihazlar artık.

Ancak "dokunma" seçeneğini seçerek, VPN'e, uzaktaki makinelerin tam olarak LAN'daki gibi hissetmelerini sağlamasını, yayın Ethernet paketleri ve ham Ethernet protokollerini, yazıcılarla ve dosya sunucularıyla iletişim kurmak ve Ağ Komşuları ekranını güçlendirmek için kullanılabilir hale getirmesini söylüyorum. Harika çalışıyor ve dışarıda çalışmayan şeyler hakkında hiç bilgi alamadım!


15

Ben hep ayarlarım. Tap, OpenVPN'de ethernet köprülemesi tarafından kullanılır ve uğraşmaya değmeyeceği eşi görülmemiş bir karmaşıklık seviyesi sunar. Genellikle bir VPN'nin kurulması gerektiğinde, şimdi olması gerekir ve karmaşık dağıtımlar hızlı gelmez.

OpenVPN SSS ve Ethernet köprüleme'yi NASIL olan mükemmel Bu konu ile ilgili kaynaklar.


9
Tecrübelerime göre, tun kurulumu daha kolay ancak çok fazla ağ yapılandırmasıyla başa çıkmıyor, bu yüzden çok daha tuhaf ağ oluşturma sorunlarıyla karşılaşıyorsunuz. Aksine, musluk kurulumu için biraz daha karmaşıktır, ancak bir kez yaptığınızda, genellikle herkes için "sadece işe yarar".
Cerin

8

OpenVPN kullanarak mobil (iOS veya Android) cihazları bağlamayı planlıyorsanız, TUN'u şu anda kullanmanız gerekir , çünkü TAP bunlarda OpenVPN tarafından desteklenmiyor :

TAP dezavantajları: ..... Android veya iOS cihazlarıyla kullanılamaz


TAP, Android'de üçüncü parti bir uygulama aracılığıyla desteklenir: OpenVPN İstemcisi (Geliştirici: colucci-web.it)
Boo

5

Tun'ı kullanmaya başladım, ancak her PC için a / 30 alt ağ kullanımını beğenmediğim için dokunmaya başladım (Windows'u desteklemem gerekiyor). Bunu savurgan ve kafa karıştırıcı buldum.

Sonra sunucudaki "topoloji alt ağı" seçeneğini keşfettim. 2.1 RC ile çalışır (2.0 değil), ancak (windows) makine başına bir (ardışık) IP adresinin rahatlığıyla tun'ın (köprüleme, performans, yönlendirme vb.) Tüm avantajlarını veriyor.


5

Çünkü basit bir tavsiyeyle gelmek zor:

İnternete bağlanmak için sadece VPN kullanıyorsanız TUN'u kullanabilirsiniz .

Gerçek uzak ağa (yazıcılar, uzak masaüstleri vb.) Bağlanmak istiyorsanız TAP kullanmanız gerekir .


4

Aynı soruyu yıllar önce kullandım ve blogumda (kişisel olarak diğer kaynaklardan eksik bulduğum) basit bir şekilde açıklamaya çalıştım: Bir OpenVPN Astarı

Birisi yardımcı olur umarım


2
Bu soruyu teorik olarak cevaplayabilse de , cevabın temel kısımlarını buraya eklemek ve referans için bağlantıyı sağlamak tercih edilir.
Mark Henderson

Harika yazı! Nadiren böyle bir yazıyı okudum ama bu yaptım. Yine de Mark Henderson ile aynı fikirdeyim, küçük bir özet yazmalı ve bağlantıyı yerleştirmelisiniz.
Pierre-Luc Bertrand

4

Benim "kurallarım"
TUN'um - SADECE diğer ucunda doğrudan OpenVPN sunucu makinesine bağlı kaynaklara erişiminiz varsa ve Windows sorunu yoksa. Buradaki biraz yaratıcılık, kaynakları OpenVPN sunucusunda yerel olarak "görünmesini" sağlayarak yardımcı olabilir. (örnekler, bir ağ yazıcısına CUPS bağlantısı veya OpenVPN sunucusunda MONTAJLI başka bir makinede bir Samba paylaşımı olabilir.) İPUCU

- ağ üzerinden ağ üzerinden bağlanmış birden fazla kaynağa (makineler, depolama, yazıcılar, cihazlar) erişmeniz gerekiyorsa diğer ucu. TAP, bazı Windows uygulamaları için de gerekli olabilir.


Avantajları:
TUN normal olarak VPN erişimini tek bir makineye (IP adresi) ve dolayısıyla uzak ağdaki sınırlı bağlantı sayesinde daha iyi güvenlik sağlar. TUN bağlantısı, VPN tünelinde daha az yük oluşturacak ve uzaktaki ağa dönüşecek, çünkü yalnızca tek IP adresine gelen / giden trafik VPN'yi diğer tarafa geçecektir. Alt ağdaki diğer istasyonlara IP Yolları dahil edilmez, bu nedenle VPN tüneli üzerinden trafik gönderilmez ve OpenVPN sunucusunun ötesinde iletişim kurulamaz veya çok az iletişim kurulamaz.

TAP - genellikle paketlerin uç noktalar arasında serbestçe akmasına izin verir. Bu, eski Microsoft yazılımı tarafından kullanılan bazı yöntemler de dahil olmak üzere uzaktaki ağdaki diğer istasyonlarla iletişim esnekliği sağlar. TAP, "güvenlik duvarının arkasında" dış erişim izni vermeyle ilgili doğal güvenlik risklerine sahiptir. Daha fazla trafik paketinin VPN tünelinden akmasına izin verecek. Bu aynı zamanda bitiş noktaları arasında adres çakışması olasılığını da açar.

Orada vardıryığın katmanı nedeniyle gecikmedeki farklılıklar, ancak çoğu son kullanıcı senaryosunda, uç noktaların bağlantı hızı muhtemelen gecikmenin iletimin belirli yığın katmanından daha önemli bir katkısıdır. Gecikme söz konusuysa, diğer alternatifleri değerlendirmek iyi bir fikir olabilir. Mevcut GHz seviyeli çoklu işlemciler normal olarak internet üzerinden iletim darboğazı dışına çıkar.

"Daha iyi" ve "Daha da kötüsü" bağlam olmadan tanımlanamaz.
(Bu, danışmanın en sevdiği cevabı, “Peki, bu…”)
Ferrari, bir damperli kamyondan daha mı iyidir? Hızlı gitmeye çalışıyorsanız, olabilir; ama ağır yükleri çekmeye çalışıyorsanız, muhtemelen değil.

TUN veya TAP'ın gereksinimlerinize daha uygun olup olmadığına karar vermeden önce, "erişim ihtiyacı" ve "güvenlik gereksinimleri" gibi kısıtlamalar tanımlanmalı ve ayrıca ağ çıkışı ve ekipman kısıtlamaları gibi kısıtlamalar tanımlanmalıdır.


2

TAP'ı ayarlamak, ayarlayan kişiden neredeyse hiçbir ek çalışma gerektirmez.

Tabii ki, TUN'u nasıl kuracağınızı biliyorsanız, fakat ne yaptığınızı anlamıyorsanız ve basit bir öğreticiyi izleyerek, TAP kurulumu için mücadele edeceksiniz ancak daha zor olduğu için değil ama ne yaptığınızı bilmediğiniz için yapıyor. Hangi kolayca TAP ortamında ağ çatışmalarına yol açabilir ve daha sonra daha karmaşık gibi görünüyor.

Aslında, ne yaptığınızı bildiğiniz için bir eğiticiye gerek duymuyorsanız, dokunun ayarlanması, ayar yapmak kadar uzun sürer.

dokunarak alt ağlama hakkında birçok çözüm var, kendimi en kolay yol B sınıfı bir alt ağ kullanmanın en kolay yolu buldum. site.2 (Ağ1) kullanarak 172.22.1.0/16 site2 (ağ2) kullanarak 172.22.2.0/16 site3 kullanarak 172.22.3.0/16 vb.

site1'i oVPN sunucusuyla kurar ve istemcilere 172.22.254.2 - 172.22.254.255/16 ip aralığını verirseniz, her alt ağın kendi içinde 200'den fazla müşterisine sahip olabilmeniz için 200'den fazla ovpn istemcisine (alt ağ) sahip olabilirsiniz. Yapabileceğiniz toplam 40.000 istemciyi yapar (oVPN'in bununla başa çıkabileceğinden şüphe duyulur, ancak gördüğünüz gibi, uygun alt ağ oluşturmak, muhtemelen ihtiyaç duyduğunuzdan çok daha fazlasını verecektir)

Bir musluk kullanın ve tüm istemciler büyük bir şirket ağında olduğu gibi birlikte.

Bununla birlikte, her sitenin kendi DHCP'si vardır ve olması gerekir, dhcp dağıtımını engellemek için abtables veya iptables ya da dnsmasq kullandığınızdan emin olmanız gerekir. Ancak ebtables, performansı yavaşlatacak. dnsmasq dhcp-host = 20: a9: 9b: 22: 33: 44 kullanarak, örneğin tüm dhcp sunucularında kurulum yapmak çok büyük bir görev olacaktır. bununla birlikte, modern donanımda abtables'ın etkisi o kadar büyük değil. sadece% 1 veya 2

musluğun tepesi, kabaca 32'ye kadar, bu da bir sorun değil (şifrelenmemiş ağlarda olabilir) ama şifreli ağlarda genellikle yavaşlamaya neden olacak AES.

Benim wrt3200acm örneğin şifrelenmemiş üzerinde 360 ​​Mbps alıyorum. Şifrelemeyi kullanmak, ne tür bir şifreleme seçtiğime bağlı olarak 54-100Mbps'ye düşüyor) ancak openvpn 1500 şifrelemeyi ve 32 ek yükte ikinci şifrelemeyi yapmıyor. Bunun yerine 1500 + 32overhead'de 1 kez şifreleme yapar.

Yani burada etkisi çok az.

Eski donanımda, bu etkiyi daha fazla fark edebilirsiniz, ancak modern donanımda asgari düzeyde.

AES destekli 2 sanal makine arasındaki şifreleme, TAP ile 120-150Mbps'ye kadar benim yazılımımı elde etmemi sağlıyor.

Bazı raporlar, AES donanım şifreleme desteğine sahip özel yönlendiricilerin 400Mbps'ye kadar çıkabildiğini bildirdi Bir i5-3570k sonra 3 kat daha hızlı (bu benim test sistemimde 1 çekirdek kullanımının% 100'ünde 150Mbps'den daha yüksek olamazdı) Diğer tarafım: E3-1231 v3, sonra kabaca% 7 CPU kullanımındaydı. Openvpn'nin% 25'ini kullanıyordu. Böylece E3 muhtemelen bağlantıyı 3 ila 4 kat arttırabilir.

böylece 360Mbps ve 600Mbps arasında E3-1231 v3 işlemci yapıyor, AES265 şifreli, SHA256 ve ta.key, sertifika tls-cipher arasındaki bağlantıya sahip bir şey olurdu. Ayrıca en yüksek TLS-DHE-RSA-WITH-AES- 256 SHA 256

Bunu işaret etmek için, dokunuşla: wrt3200acm şifrelemeyle 70-80mbps'ye kadar çıkar. i5-3570k şifreleme ile 120-150'ye ulaşıyor. E3-1231 v3 şifrelemeyle en az 360Mbps alır (bu, durum 1 ve 2 ile olan bulgularımın arasına girer çünkü test edeceğim 2 E3-1231 v3 yoktu).

Bunlar benim openvpn TAP'a bağlı 2 farklı alt ağdaki 2 istemci arasında kopyalayan pencerelere dayanan bulgularım.


-1

Öyleyse, neden, ne kadarını aldın? Açıkça, paketlerin katmanlanmasının bu yöntemle azaltılmış olan çok daha az gecikme ve aktarım kaybıyla ilerlediğinden dolayı, TAP'ı kullanacağım. Ancak, yalnızca katman 3 ile bu, VPN'in çalışması üzerinde, özellikle de tünelleme yönü ve hangi IP'lere ve atanabilir adreslere izin verildiğini etkileyebilecek herhangi bir etkiyi etkiler. UDP kullanımı muhtemelen sizin için en iyi yolun hangisi olduğuna karar vermeniz gereken başka bir durumu ortaya koyuyor. Her ağ farklıdır ve benzersiz bir parametre kümesi gerektirir. Bu yardımcı olur umarım.


1
Oldukça kafa karıştırıcı. Lütfen onu temizlemeyi, önemli farkları açıklamayı ve onları kilitlemeyi düşünün.
vonbrand
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.