All Projects → coyove → Goflyway

coyove / Goflyway

Licence: mit
An encrypted HTTP server

Programming Languages

go
31211 projects - #10 most used programming language
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Goflyway

Gsnova
Private proxy solution & network troubleshooting tool.
Stars: ✭ 509 (-88.14%)
Mutual labels:  websocket, mitmproxy
Flask Socketio
Socket.IO integration for Flask applications.
Stars: ✭ 4,523 (+5.38%)
Mutual labels:  websocket
Grpc Websocket Proxy
A proxy to transparently upgrade grpc-gateway streaming endpoints to use websockets
Stars: ✭ 395 (-90.8%)
Mutual labels:  websocket
Websocket
The Hoa\Websocket library.
Stars: ✭ 421 (-90.19%)
Mutual labels:  websocket
Spring Samples For All
spring、spring-boot、spring-cloud 常用整合用例
Stars: ✭ 401 (-90.66%)
Mutual labels:  websocket
Nintendoswitchrestapi
Reverse engineered REST API used in the Nintendo Switch app for iOS. Includes documentation on Splatoon 2's API.
Stars: ✭ 439 (-89.77%)
Mutual labels:  mitmproxy
Tokio Tungstenite
Tokio binding for Tungstenite, the Lightweight stream-based WebSocket implementation
Stars: ✭ 392 (-90.87%)
Mutual labels:  websocket
Socketio Client Ue4
socket.io client plugin for Unreal Engine 4
Stars: ✭ 451 (-89.49%)
Mutual labels:  websocket
Webim
基于环信webim+layim的web网页即时通讯 layim H5移动版
Stars: ✭ 448 (-89.56%)
Mutual labels:  websocket
Microwebsrv
A micro HTTP Web server that supports WebSockets, html/python language templating and routing handlers, for MicroPython (used on Pycom modules & ESP32)
Stars: ✭ 420 (-90.21%)
Mutual labels:  websocket
Hydra
后端一站式微服务框架,提供API、web、websocket,RPC、任务调度、消息消费服务器
Stars: ✭ 407 (-90.52%)
Mutual labels:  websocket
Xchange Stream
XChange-stream is a Java library providing a simple and consistent streaming API for interacting with Bitcoin and other crypto currency exchanges via WebSocket protocol. It is build on top of of XChange library providing new interfaces for streaming API. User can subscribe for live updates via reactive streams of RxJava library.
Stars: ✭ 402 (-90.63%)
Mutual labels:  websocket
Happychat
基于Netty实现的WebSocket聊天室,支持几万人同时在线聊天
Stars: ✭ 445 (-89.63%)
Mutual labels:  websocket
Huobi python
Python SDK for Huobi Spot API
Stars: ✭ 391 (-90.89%)
Mutual labels:  websocket
Engine.io
socket.io
Stars: ✭ 4,329 (+0.86%)
Mutual labels:  websocket
Socket.io Unity
socket.io client for Unity, power game client with node.js back-end
Stars: ✭ 396 (-90.77%)
Mutual labels:  websocket
Wamp Proto
The Web Application Messaging Protocol
Stars: ✭ 405 (-90.56%)
Mutual labels:  websocket
Framework
Node.js framework
Stars: ✭ 4,139 (-3.56%)
Mutual labels:  websocket
Iogrid
Multiplayer game engine/framework built using SocketCluster and Phaser
Stars: ✭ 455 (-89.4%)
Mutual labels:  websocket
Primus
⚡ Primus, the creator god of the transformers & an abstraction layer for real-time to prevent module lock-in.
Stars: ✭ 4,302 (+0.23%)
Mutual labels:  websocket

goflyway v2 - a local port forwarder built on HTTP

master is the active develop branch and containing v2 code, for the stable v1 release (though it was once called v2.0), please refer to v1.0 branch.

goflyway v2 is a special tool to forward local ports to a remote server securly, just like ssh -L.

goflyway uses pure HTTP POST requests to relay TCP connections. There is no CONNECT involved nor needed because goflyway is designed mainly for those people who are behind a CONNECT-less HTTP proxy or want to accelerate connections through static CDNs.

However pure HTTP requesting is definitely a waste of bandwidth if you already have a better network environment, so use -w to turn on WebSocket relay, or -K to turn on KCP relay if possible.

Usage

Forward localhost:1080 to server:1080 through server:80

    Server: ./goflyway :80
    Client: ./goflyway -L 1080::1080 server:80 -p password

Forward localhost:1080 to server2:1080 through server:80 using WebSocket

    Server: ./goflyway :80
    Client: ./goflyway -w -L 1080:server2:1080 server:80 -p password

Dynamically forward localhost:1080 to server:80

    Server: ./goflyway :80
    Client: ./goflyway -D 1080 server:80 -p password

HTTP reverse proxy or static file server on the same port:

    ./goflyway :80 -P http://127.0.0.1:8080 
    ./goflyway :80 -P /var/www/html

Write Buffer

In HTTP mode when server received some data it can't just send them to the client directly because HTTP is not bi-directional, instead the server must wait until the client requests them, which means these data will be stored in memory for some time.

You can use -W bytes to limit the maximum bytes a server can buffer (for each connection), by default it is 1048576 (1M). If the buffer reaches the limit, the following bytes will be blocked until the buffer has free space for them.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].