Jakie są różnice między używaniem dev tap i dev tun dla openvpn? Wiem, że różne tryby nie mogą ze sobą współpracować. Jakie są różnice techniczne, oprócz operacji warstwy 2 vs 3. Czy istnieją różne charakterystyki wydajności lub różne poziomy kosztów ogólnych. Który tryb jest lepszy. Jakie funkcje są dostępne wyłącznie w każdym trybie.
85
Odpowiedzi:
jeśli możesz utworzyć VPN na warstwie 3 (jeszcze jeden przeskok między podsieciami) - wybierz tun.
jeśli chcesz połączyć dwa segmenty Ethernet w dwóch różnych lokalizacjach - użyj dotknij. w takiej konfiguracji możesz mieć komputery w tej samej podsieci ip (np. 10.0.0.0/24) na obu końcach VPN i będą one mogły „rozmawiać” bezpośrednio bez żadnych zmian w swoich tablicach routingu. VPN działa jak przełącznik Ethernet. może to zabrzmieć fajnie i jest przydatne w niektórych przypadkach, ale radzę nie iść na to, chyba że naprawdę potrzebujesz. jeśli wybierzesz taką konfigurację pomostową warstwy 2 - w sieci VPN pojawi się trochę „śmieci” (czyli pakietów rozgłoszeniowych).
używając tap będziesz miał nieco więcej narzutu - oprócz nagłówków ip również tunel będzie wysyłany 38B lub więcej nagłówków ethernetowych (w zależności od rodzaju twojego ruchu - prawdopodobnie spowoduje to większą fragmentację).
źródło
Wybrałem „dotknij” podczas konfigurowania sieci VPN dla znajomego, który był właścicielem małej firmy, ponieważ jego biuro korzysta z plątaniny komputerów z systemem Windows, drukarek komercyjnych i serwera plików Samby. Niektóre z nich używają czystego TCP / IP, niektóre używają tylko NetBIOS (i dlatego potrzebują pakietów rozgłoszeniowych Ethernet) do komunikacji, a niektóre nawet nie jestem tego pewien.
Gdybym wybrał „tun”, prawdopodobnie spotkałbym się z wieloma zepsutymi usługami - wieloma rzeczami, które działały, gdy jesteś fizycznie w biurze, ale potem zepsułoby się, gdy odszedłeś poza witrynę, a Twój laptop nie mógł „zobaczyć” urządzenia w podsieci Ethernet już.
Ale wybierając opcję „dotknij”, mówię VPN, aby zdalne maszyny czuły się dokładnie tak, jakby były w sieci LAN, z dostępnymi pakietami Ethernet i surowymi protokołami Ethernet dostępnymi do komunikacji z drukarkami i serwerami plików oraz do zasilania ich wyświetlacza otoczenia sieciowego. Działa świetnie i nigdy nie otrzymuję raportów o rzeczach, które nie działają poza siedzibą!
źródło
Zawsze konfiguruję tun. Tap jest wykorzystywany przez mostkowanie Ethernet w OpenVPN i wprowadza bezprecedensowy poziom złożoności, z którym po prostu nie warto się przejmować. Zwykle, gdy VPN musi zostać zainstalowany, jest potrzebny teraz , a złożone wdrożenia nie przychodzą szybko.
OpenVPN FAQ i HOWTO Ethernet Bridging są doskonałe środki na ten temat.
źródło
Jeśli planujesz podłączyć urządzenia mobilne (iOS lub Android) za pomocą OpenVPN, powinieneś użyć TUN, ponieważ obecnie TAP nie jest na nich obsługiwany przez OpenVPN :
źródło
Zacząłem używać tun, ale przełączyłem się na tap, ponieważ nie podobało mi się korzystanie z podsieci / 30 na każdym komputerze (muszę obsługiwać system Windows). Uważam, że jest to marnotrawstwo i dezorientacja.
Potem odkryłem opcję „podsieci topologii” na serwerze. Współpracuje z 2.1 RC (nie 2.0), ale daje mi wszystkie zalety tun (brak mostkowania, wydajności, routingu itp.) Z wygodą jednego (sekwencyjnego) adresu IP na maszynę (Windows).
źródło
Ponieważ trudno mi znaleźć proste porady:
Możesz użyć TUN, jeśli po prostu używasz VPN do łączenia się z Internetem .
Musisz użyć TAP, jeśli chcesz połączyć się z rzeczywistą siecią zdalną (drukarki, komputery zdalne itp.)
źródło
Wiele lat temu miałem to samo pytanie i starałem się wyjaśnić je w prosty sposób (czego osobiście brakowało w innych zasobach) na moim blogu: elementarz OpenVPN
Mam nadzieję, że to komuś pomoże
źródło
Moje „praktyczne zasady”
TUN - jeśli TYLKO potrzebujesz dostępu do zasobów połączonych bezpośrednio z maszyną serwerową OpenVPN na drugim końcu i nie ma problemów z Windows. Tutaj może pomóc odrobina kreatywności, sprawiając, że zasoby wydają się być lokalne dla serwera OpenVPN. (przykładami może być połączenie CUPS z drukarką sieciową lub udział Samby na innym komputerze MOUNT zamontowanym na serwerze OpenVPN).
TAP - jeśli potrzebujesz dostępu do wielu zasobów (komputerów, pamięci, drukarek, urządzeń) podłączonych przez sieć na drugi koniec. TAP może być również wymagany w przypadku niektórych aplikacji Windows.
Zalety:
TUN zwykle ogranicza dostęp VPN do pojedynczego komputera (adresu IP), a zatem (przypuszczalnie) poprawia bezpieczeństwo poprzez ograniczoną łączność z siecią po drugiej stronie. Połączenie TUN spowoduje mniejsze obciążenie tunelu VPN, a z kolei sieci odległej, ponieważ tylko ruch do / z jednego adresu IP przekieruje VPN na drugą stronę. Trasy IP do innych stacji w podsieci nie są uwzględniane, więc ruch nie jest wysyłany przez tunel VPN i komunikacja poza serwerem OpenVPN jest niewielka lub nie ma żadnej komunikacji.
TAP - zwykle pozwala na swobodny przepływ pakietów między punktami końcowymi. Daje to elastyczność komunikacji z innymi stacjami w odległej sieci, w tym z niektórymi metodami używanymi przez starsze oprogramowanie Microsoft. TAP ma nieodłączne zagrożenia związane z udzielaniem dostępu z zewnątrz „za zaporą ogniową”. Umożliwi to przepływ większej liczby pakietów ruchu przez tunel VPN. Otwiera to również możliwość konfliktów adresów między punktami końcowymi.
tam sąróżnice w opóźnieniu z powodu warstwy stosu, ale w większości scenariuszy dla użytkowników końcowych prędkość połączenia punktów końcowych jest prawdopodobnie bardziej znaczącym czynnikiem przyczyniającym się do opóźnienia niż konkretna warstwa stosu transmisji. Jeśli chodzi o opóźnienie, dobrym pomysłem może być rozważenie innych rozwiązań. Obecne wieloprocesory na poziomie GHz zwykle przekraczają wąskie gardło transmisji przez Internet.
„Lepsze” i „Gorzej” nie są definiowalne bez kontekstu.
(To jest ulubiona odpowiedź konsultanta: „Cóż, to zależy ...”)
Czy Ferrari jest „lepsze” niż wywrotka? Jeśli próbujesz iść szybko, być może; ale jeśli próbujesz ciągnąć ciężkie ładunki, prawdopodobnie nie.
Należy określić ograniczenia, takie jak „potrzeba dostępu” i „wymagania bezpieczeństwa”, a także zdefiniować ograniczenia, takie jak przepustowość sieci i ograniczenia sprzętowe, zanim będzie można zdecydować, czy TUN lub TAP jest lepiej dostosowany do twoich potrzeb.
źródło
Konfiguracja TAP nie wymaga prawie żadnej dodatkowej pracy ze strony osoby, która go konfiguruje.
Oczywiście, jeśli wiesz, jak skonfigurować TUN, ale nie rozumiesz, co robisz i po prostu postępujesz zgodnie z samouczkiem tun, będziesz walczył o skonfigurowanie TAP, ale nie dlatego, że jest to trudniejsze, ale ponieważ nie wiesz, czym jesteś robić. Co z łatwością może prowadzić do konfliktów sieciowych w środowisku TAP, a wtedy wygląda na to, że jest bardziej skomplikowane.
Faktem jest, że jeśli nie potrzebujesz samouczka, ponieważ wiesz, co robisz, konfiguracja kranu zajmuje tyle samo czasu, co konfiguracja tun.
z kranem istnieje wiele rozwiązań dotyczących podsieci, znalazłem się najprostszym sposobem na użycie podsieci klasy B. site1 (Network1) przy użyciu 172.22.1.0/16 site2 (sieć2) przy użyciu 172.22.2.0/16 site3 przy użyciu 172.22.3.0/16 itd.
konfigurujesz site1 z serwerem oVPN i dajesz klientom zakres adresów IP 172.22.254.2 - 172.22.254.255/16, dzięki czemu możesz mieć ponad 200 klientów (podsieci ovpn) w każdej podsieci może mieć ponad 200 klientów. Sprawia, że możesz obsłużyć w sumie 40 000 klientów (wątpliwość, że oVPN może to obsłużyć, ale jak widzisz, skonfigurowanie odpowiedniej podsieci da ci więcej, niż najprawdopodobniej kiedykolwiek potrzebujesz)
używasz kranu, a wszyscy klienci są razem, jak w ogromnej sieci korporacyjnej.
JEŚLI jednak każda strona ma swój własny DHCP i powinna, musisz upewnić się, że używasz ebtables, iptables lub dnsmasq, aby zablokować dystrybucję dhcp, aby zwariować. ebtables spowalnia jednak wydajność. używając dnsmasq dhcp-host = 20: a9: 9b: 22: 33: 44, na przykład zignorowanie będzie ogromnym zadaniem na wszystkich serwerach dhcp. Jednak na nowoczesnym sprzęcie wpływ ebtabli nie jest tak duży. tylko 1 lub 2%
obciążenie kranu, w przybliżeniu 32 do tunu, również nie stanowi większego problemu (może być w sieciach niezaszyfrowanych), ale w sieciach szyfrowanych to zwykle AES spowoduje spowolnienie.
Na moim wrt3200acm, na przykład niezaszyfrowanym, otrzymuję 360 Mb / s. Używając szyfrowania spada do 54-100 Mb / s, w zależności od wybranego przeze mnie szyfrowania), ale openvpn nie wykonuje szyfrowania na 1500 i drugiego szyfrowania na 32 narzutach. Zamiast tego wykonuje szyfrowanie 1 raz na 1500 + 32 overhead.
Zatem wpływ tutaj jest minimalny.
Na starszym sprzęcie możesz zauważyć większy wpływ, ale na nowoczesnym sprzęcie jest to naprawdę minimum.
Szyfrowanie między 2 maszynami wirtualnymi z obsługą AES daje mi mój ovpn z TAP do 120-150 Mb / s.
Niektórzy twierdzą, że routery dedykowane ze wsparciem szyfrowania sprzętowego AES osiągają prędkość nawet 400 Mb / s! 3 razy szybszy niż i5-3570k (co w moim systemie testowym nie mogło przekroczyć 150 Mb / s przy 100% wykorzystania 1 rdzenia) Mój drugi koniec: E3-1231 v3, wtedy był mniej więcej na poziomie 7% wykorzystania procesora, około Wykorzystano 25% rdzenia wykorzystanego przez openvpn. E3 najprawdopodobniej może zwiększyć połączenie o 3 do 4 razy.
więc będziesz miał coś pomiędzy 360 Mb / s a 600 Mb / s przy połączeniu między procesorem E3-1231 v3 cpu, wykonując szyfr AES265, auth SHA256 i ta.key, certyfikaty tls-cipher Użyłem również najwyższego TLS-DHE-RSA-WITH-AES- 256-SHA256
Aby to podkreślić, dotknij: wrt3200acm uzyskuje do 70-80 Mb / s z szyfrowaniem. i5-3570k dostaje do 120-150 z szyfrowaniem. E3-1231 v3 dostaje co najmniej 360 Mb / s z szyfrowaniem (jest to interpolowane z moich ustaleń w przypadku 1 i 2, ponieważ nie miałem 2 E3-1231 v3 do testowania.)
Są to moje ustalenia oparte na kopiowaniu okien do okien między 2 klientami w 2 różnych podsieciach połączonych przez TAP openvpn
źródło
Jeśli tak, dlaczego, ile masz? Wykorzystałbym TAP, wyraźnie z tego powodu, że nakładanie warstw na pakiety przebiega z dużo mniejszym opóźnieniem i utratą transmisji, co jest zmniejszone za pomocą tej metody. Jednak tylko w warstwie 3 ma to wpływ na każdy pozorny wpływ na działanie sieci VPN, zwłaszcza aspekt tunelowania i które adresy IP są dozwolone przez adresy, które można przypisać. Korzystanie z UDP może ewentualnie wprowadzić inną sytuację, w której musisz zdecydować, która droga jest dla Ciebie najlepsza. Każda sieć jest inna i wymaga unikalnego zestawu parametrów. Mam nadzieję że to pomoże.
źródło