IPOP
Oryginalni autorzy | Renato Figueiredo |
---|---|
Magazyn | |
Napisane w | Python , C , Bash |
Typ | VPN |
Licencja | Licencja MIT |
Strona internetowa |
IPOP (IP-Over-P2P) to zorientowana na użytkownika wirtualna sieć typu open source , umożliwiająca użytkownikom końcowym definiowanie i tworzenie własnych wirtualnych sieci prywatnych (VPN). Wirtualne sieci IPOP zapewniają kompleksowe tunelowanie IP lub Ethernet przez łącza „TinCan” i są zarządzane za pomocą kontrolnego interfejsu API w celu tworzenia różnych nakładek VPN zdefiniowanych programowo .
Historia
IPOP rozpoczął się jako projekt badawczy na Uniwersytecie Florydy w 2006 roku. Podczas projektowania i wdrażania pierwszej generacji IPOP został zbudowany na szczycie ustrukturyzowanych łączy P2P zarządzanych przez bibliotekę C# Brunet . W swoim pierwszym projekcie IPOP opierał się na ustrukturyzowanej sieci nakładkowej P2P firmy Brunet do przesyłania wiadomości peer-to-peer, powiadomień, przechodzenia NAT i tunelowania IP. IPOP Brunet jest nadal dostępny jako kod open source ; jednak architektura i implementacja IPOP ewoluowały.
Od września 2013 r. projekt jest finansowany przez National Science Foundation w ramach programu SI2 (Software Infrastructure for Sustained Innovation), aby udostępnić go jako „element oprogramowania naukowego” typu open source do badań nad przetwarzaniem w chmurze. Projekt drugiej generacji IPOP obejmuje standardy (XMPP, STUN, TURN) i biblioteki ( libjingle ), które ewoluowały od początku projektu, tworząc tunele P2P – które nazywamy łączami TinCan. Obecna implementacja IPOP oparta na TinCan jest oparta na modułach napisanych w C/C++, które wykorzystują libjingle do tworzenia linków TinCan i udostępniania zestawu interfejsów API modułom kontrolera, które zarządzają konfiguracją, tworzeniem i zarządzaniem linkami TinCan. W celu zwiększenia modułowości moduł kontrolera działa jako odrębny proces od modułu C/C++, który implementuje łącza TinCan i komunikuje się za pośrednictwem systemu RPC opartego na JSON; w ten sposób kontroler może być napisany w innych językach, takich jak Python.
Zobacz też
- OpenConnect , implementuje VPN oparty na TLS i DTLS
- OpenSSH , który implementuje również VPN oparty na „tun” warstwy 2/3
- OpenVPN , VPN w przestrzeni użytkownika oparty na SSL/TLS
- Point-to-Point Tunneling Protocol (PPTP) Metoda firmy Microsoft służąca do implementacji sieci VPN
- Secure Socket Tunneling Protocol (SSTP) Metoda firmy Microsoft służąca do implementacji protokołu PPP przez SSL VPN
- Social VPN , VPN typu open source oparty na relacjach
- SoftEther VPN , program serwera VPN typu open source, który obsługuje protokół OpenVPN
- stunnel szyfruje dowolne połączenie TCP (usługa z jednym portem) przez SSL
- Wykrawanie otworów UDP , technika ustanawiania „połączeń” UDP między węzłami sieci chronionymi zaporą ogniową / NAT