
frp v0.71.0
Un reverse proxy veloce per aiutarti a esporre un server locale dietro un NAT o un firewall su Internet.
frp
Sponsor
frp è un progetto open source il cui sviluppo continuo è reso possibile interamente dal supporto dei nostri fantastici sponsor. Se desideri unirti a loro, ti invitiamo a considerare di sponsorizzare lo sviluppo di frp.
Gold Sponsors
L'IDE completo progettato per sviluppatori Go professionisti
Recall.ai - API per registrazioni di riunioni
Se stai cercando un'API per la registrazione di riunioni, considera di dare un'occhiata a Recall.ai,
un'API che registra Zoom, Google Meet, Microsoft Teams, riunioni in presenza e altro ancora.
Cos'è frp?
frp è un reverse proxy veloce che ti consente di esporre un server locale situato dietro un NAT o un firewall a Internet. Attualmente supporta i protocolli TCP e UDP, oltre a HTTP e HTTPS, consentendo l'inoltro delle richieste ai servizi interni tramite nome di dominio.
frp offre anche una modalità di connessione P2P.
Indice dei contenuti
- Stato di sviluppo
- Architettura
- Esempio di utilizzo
- Accedi al tuo computer in una rete LAN tramite SSH
- Più servizi SSH che condividono la stessa porta
- Accesso ai servizi web interni con domini personalizzati in LAN
- Inoltra le richieste di query DNS
- Inoltra Unix Domain Socket
- Esponi un semplice file server HTTP
- Abilita HTTPS per un servizio HTTP(S) locale
- Esponi il tuo servizio privatamente
- Modalità P2P
- Funzionalità
- File di configurazione
- Utilizzo delle variabili d'ambiente
- Dividi le configurazioni in file diversi
- Dashboard del server
- Interfaccia di amministrazione del client
- Monitoraggio
- Autenticazione del client
- Crittografia e compressione
- Ricaricamento a caldo della configurazione di frpc
- Ottieni lo stato del proxy dal client
- Consentire solo determinate porte sul server
- Riutilizzo delle porte
- Limite di larghezza di banda
- Multiplexing dei flussi TCP
- Supporto del protocollo KCP
- Supporto del protocollo QUIC
- Pooling delle connessioni
- Bilanciamento del carico
- Controllo di integrità del servizio
- Riscrittura dell'header HTTP Host
- Impostazione di altri header HTTP
- Ottieni l'IP reale
- Richiedi HTTP Basic Auth (password) per i servizi web
- Nomi di sottodominio personalizzati
- Routing degli URL
- Multiplexing delle porte TCP
- Connessione a frps tramite PROXY
- Mapping di intervalli di porte
- Plugin del client
- Plugin di gestione del server
- Gateway per tunnel SSH
- Rete virtuale (VirtualNet)
- Feature Gates
- Progetti correlati
- Contribuire
- Donazioni
Stato di sviluppo
frp è attualmente in fase di sviluppo. Puoi provare l'ultima versione stabile nel ramo master, oppure utilizzare il ramo dev per accedere alla versione attualmente in sviluppo.
Stiamo attualmente lavorando alla versione 2 e tentando di eseguire alcune refactoring e miglioramenti del codice. Tuttavia, tieni presente che non sarà compatibile con la versione 1.
Passeremo dalla versione 0 alla versione 1 al momento opportuno e accetteremo solo correzioni di bug e miglioramenti, piuttosto che grandi richieste di funzionalità.
Informazioni su V2
La complessità e la difficoltà della versione v2 sono molto più elevate del previsto. Posso lavorare al suo sviluppo solo durante periodi di tempo frammentati, e le continue interruzioni compromettono notevolmente la produttività. Data questa situazione, continueremo a ottimizzare e iterare sulla versione attuale finché non avremo più tempo libero per procedere con la revisione della versione principale.
Il concetto alla base di v2 si basa sui miei anni di esperienza e riflessione nel dominio cloud-native, in particolare in K8s e ServiceMesh. Il suo nucleo è un proxy modernizzato di livello quattro e sette, simile a envoy. Questo proxy è altamente scalabile, non solo capace di implementare la funzionalità di penetrazione della rete interna, ma anche applicabile a vari altri domini. Basandoci su questo nucleo altamente scalabile, miriamo a implementare tutte le capacità di frp v1 affrontando anche le funzionalità che in precedenza erano irrealizzabili o difficili da implementare in modo elegante. Inoltre, manterremo capacità di sviluppo e iterazione efficienti.