42

GitHub - txthinking/mr2: Expose local server to external network

 4 years ago
source link: https://github.com/txthinking/mr2
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

README.md

Mr.2

Build Status License: GPL v3 ZH

Table of Contents

What is Mr.2

Mr.2 can help you expose local server to external network. Support both TCP/UDP, of course support HTTP.
Keep it simple, stupid.

Download

Download OS Arch mr2 Linux amd64 mr2_darwin_amd64 MacOS amd64 mr2_windows_amd64.exe Windows amd64

See releases for other platforms. Or go get github.com/txthinking/mr2.

Server

$ mr2 server -l :9999 -p password

Client

# Local server is 127.0.0.1:1234, expect to expose: server_address:5678
$ mr2 client -s server_address:port -p password -P 5678 -c 127.0.0.1:1234
# Local web root is /path/to/www, expect to expose: server_address:5678
$ mr2 client -s server_address:port -p password -P 5678 --clientDiretory /path/to/www

Example

Access local HTTP server

$ mr2 client -s server_address:port -p password -P 5678 -c 127.0.0.1:8080

# then
Your HTTP server in external network is: server_address:5678

SSH into local computer

$ mr2 client -s server_address:port -p password -P 5678 -c 127.0.0.1:22

# then
$ ssh -oPort=5678 user@server_address

Access local DNS server

$ mr2 client -s server_address:port -p password -P 5678 -c 127.0.0.1:53

# then
Your DNS server in external network is: server_address:5678

$ dig github.com @server_address -p 5678

Access your local directory via HTTP

$ mr2 client -s server_address:port -p password -P 5678 --clientDirectory /path/to/www

# then
A HTTP server in external network is: server_address:5678

Any TCP-based/UDP-based ideas you think of

...

Contributing

Please read CONTRIBUTING.md first

License

Licensed under The GPLv3 License


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK