
Windows 10에서 사용자 지정 VPN 클라이언트를 구현하고 싶기 때문에 전용 서브넷에 대한 모든 IP 패킷을 가져올 수 있는 가상 네트워크 어댑터를 만드는 방법에 대한 예제를 찾고 있습니다.
OpenVPN과 SoftEther도 살펴봤지만 Visual Studio 2019에서는 소스 코드가 더 이상 지원되지 않는 것 같습니다.
답변1
WireGuard 프로젝트에는윈툰, 이는 이제 일반적인 레이어 3 VPN(IPv4/IPv6만 전달)을 구축하려는 경우 선호되는 선택인 것 같습니다. 원래 WireGuard용으로 작성되었지만 이제는 OpenVPN에서도 사용됩니다. Wintun README에서는 VS 2019를 빌드 요구 사항으로 구체적으로 언급하고 소스 코드는 모두 작은 "wintun.c" 파일에 있으므로 좋은 예가 될 것입니다.
그러나 Wintun README에서는 자체 버전을 전혀 구축하지 말고 대신에 다음을 다운로드하라고 조언합니다.사전 구축된드라이버를 다운로드하여 응용 프로그램의 설치 프로그램에 번들로 묶습니다. 이미 필요한 디지털 서명이 있으므로 이 방법을 사용하면 다음과 같은 우발적인 충돌을 피할 수 있습니다.다른Wintun을 활용하는 VPN 앱. (사용자는 새로운 앱이 수정하는 데 몇 시간이 걸릴 정도로 기존 앱을 손상시키는 것을 정말 좋아하지 않습니다!)
레이어 2 VPN(이더넷 지원)을 구축할 계획이라면 기존 드라이버인 OpenVPN의TAP-Windows(NDIS 6),것 같다최신 Windows 플랫폼과도 호환됩니다. README 파일에는 최신 코드가 "Microsoft Windows 10 EWDK"를 사용하여 Windows Server 2016에서 성공적으로 빌드되었다고 나와 있으며 Git 커밋 로그에는 VS 2017 관련 업데이트에 대한 언급이 있습니다. VS 2019에서도 업데이트하는 데 많은 시간이 걸리지 않습니다.
(하지만 사용자가 설치했을 수 있는 다른 VPN 클라이언트와의 충돌 가능성을 줄이기 위해 자체 버전을 구축해서는 안 됩니다.)
일부 다른 프로젝트에는 다음과 같은 TAP-Windows 포크도 포함되어 있습니다.제로티어.
답변2
이 프로젝트를 한 번 봐주실 수 있나요?http://www.tinc-vpn.org/download/, 이것은 Windows에서 작동하는 오픈 소스 프로젝트입니다.