dev tun în Windows arată în continuare un adaptor TAP. Este greșit?
Un adaptor TAP-Windows sub un profil dev tun este normal. Driverul de nivel 3 este un comutator opțional, iar jurnalul clientului, nu numele adaptorului, spune care a rulat.
Managerul de dispozitive afișează un TAP-Windows Adapter V9 în timp ce profilul spune dev tun, iar tunelul funcționează. Această combinație nu este o configurație greșită, iar comutarea modului înainte și înapoi nu o va schimba. Numele adaptorului reflectă ce driver Windows a încărcat clientul, nu ce pachete transportă tunelul. Citește linia driverului din jurnalul clientului înainte de a modifica ceva.
De ce un tunel de nivel 3 primește un adaptor Ethernet
În cea mai mare parte a istoriei Windows a clientului nu a existat niciun adaptor virtual de nivel 3 utilizabil. Singura opțiune era driverul TAP-Windows, care prezintă o interfață Ethernet. Clientul emula apoi comportamentul de nivel 2 care lipsea pentru ca Windows să îl poată configura. Această emulare este motivul pentru care adaptorul încă arată ca o placă de rețea.
Două părți ale acestei emulări sunt vizibile dacă urmărești: clientul răspunde la ARP pentru adresa tunelului și oferă un mic contract DHCP mașinii locale. Windows vede astfel un adaptor Ethernet normal cu adresă MAC și driver NDIS, în timp ce tunelul însuși transportă pachete IP brute. Costumul Ethernet aparține driverului, nu modului tunelului.
Găsește linia driverului în loc să judeci după nume
Două adaptoare pot împărtăși un nume între versiunile driverului, așa că numele singur nu poate spune ce a rulat. Jurnalul clientului numește dispozitivul pe care l-a deschis, iar pe versiunile mai noi și driverul pe care l-a ales; aceea este linia de citit.
Verifică trei lucruri în jurnal, în această ordine: dacă clientul a deschis vreun adaptor, ce driver raportează și dacă a revenit la unul anterior după o eroare. O linie de revenire este ușor de ratat pentru că conexiunea se stabilește oricum, iar tunelul rulează apoi pe driverul mai vechi în timp ce utilizatorul crede că cel nou este activ.
Treci la driverul de nivel 3 și verifică ce trebuie să fie prezent
Driverul de nivel 3 livrat de proiectul WireGuard este disponibil începând cu versiunea 2.5 a clientului, dar este opțional. O singură directivă îl selectează:
windows-driver wintun
Driverul trebuie să fie instalat pe mașină, iar versiunile oficiale conțin o copie semnată. Livrează acea versiune semnată dacă împachetezi clientul singur, pentru că un driver construit privat se ciocnește cu copiile pe care le instalează alte produse VPN. Aceste ciocniri produc erori greu de atribuit și apar de obicei după ce un al doilea client VPN ajunge pe mașină. Un driver lipsă, dimpotrivă, lasă o linie clară în jurnal.
Driverul impune și permisiuni mai stricte, așa că clientul creează adaptorul prin serviciul său interactiv care rulează ca un cont privilegiat. Pornește clientul ca un proces obișnuit de utilizator fără acel serviciu și directiva poate eșua, ceea ce lasă adaptorul instalat anterior vizibil și pare că schimbarea a fost ignorată.
Când TAP rămâne răspunsul corect
Dacă tunelul trebuie să transporte cadre Ethernet, trafic de difuzare sau protocoale care nu sunt IP, este necesar un adaptor de nivel 2, iar driverul TAP decurge din această cerință. Un design în punte pe Windows are aceeași constrângere, deoarece interfața trebuie să intre într-un domeniu de nivel 2.
Performanța nu este un motiv pentru a alege unul în detrimentul celuilalt la nivelul numelui adaptorului. Versiunea 2.6 adaugă un driver de descărcare a canalului de date care mută procesarea pachetelor în nucleu, iar aceasta este opțiunea care schimbă caracteristicile de debit. Este o decizie de capabilitate, nu o cerință pentru conectare, și depinde de versiune și de pachetul instalat. Un profil care funcționează fără el continuă să funcționeze.
| What the tunnel must carry | Adapter family | Where it is selected |
|---|---|---|
| IPv4 and IPv6 packets | Layer-3 driver, or the older TAP emulation | Client directive plus installed signed driver |
| Ethernet frames, non-IP protocols | TAP-Windows | Profile mode and the TAP driver package |
| Higher throughput on a supported build | Data-channel offload driver | Client build and driver package, separately from the profile |
Curăță după schimbare
Eliminarea adaptorului vechi este la fel de importantă ca adăugarea celui nou. O interfață TAP rămasă poate păstra o adresă și o rută dintr-o sesiune anterioară, iar acele intrări supraviețuiesc conexiunii care le-a creat. Șterge dispozitivul învechit din Managerul de dispozitive, reconectează-te și confirmă că tabela de rutare nu îl mai menționează.
Dacă sunt instalate mai multe produse VPN, notează ce pachet de drivere aduce fiecare înainte de a depana profilul. Doi clienți care instalează versiuni diferite ale aceluiași driver sunt un conflict pe care nicio editare a profilului nu îl va rezolva. Dezinstalează clientul nefolosit și repornește, apoi caută adaptoare duplicate în Managerul de dispozitive. Abia după aceea merită să compari liniile din jurnal între cele două produse.