P2P Cloud project allows users to build their private networks.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
debian Fixed debian package Dec 7, 2018
lib PMTU on all platforms Dec 6, 2018
protocol Fixed mutex lock Oct 29, 2018
rest Added details for instance in REST API Apr 16, 2018
.gitignore Moved protobuf code into separate dirctory May 29, 2018
.goxc.json Improved stability in DHT. Added new scheme of proxy handshaking Apr 15, 2016
.travis.yml Commented out deploy for travis as of no use Sep 25, 2018
CHANGELOG Updated changelog Dec 4, 2018
CODEOWNERS Added @akarasulu as a code owner Apr 4, 2018
CONTRIBUTING.md Added contributing guide Feb 26, 2018
ISSUE_TEMPLATE.md Minor refactoring Jan 26, 2018
Jenkinsfile Jenkinsfile update Dec 7, 2018
LICENSE Switched to GPL v3 Feb 14, 2018
Makefile Fixed tests Nov 26, 2018
README.md Added badges May 28, 2018
VERSION Version bump Dec 7, 2018
appveyor.yml Removed CDN from appveyor Nov 26, 2018
config.darwin.yaml Added generic configuration file Nov 6, 2018
config.linux.yaml Added generic configuration file Nov 6, 2018
config.windows.yaml Added generic configuration file Nov 6, 2018
config.yaml added yaml config support Dec 9, 2015
configure Added support for SRV lookup Jun 22, 2018
daemon.go Default config for linux Dec 6, 2018
daemon_test.go Refactored --dht flag Apr 25, 2018
debug.go New communication protocol for automatic IP set Nov 29, 2018
dht_connection.go Daemon will wait for internet restore Jun 26, 2018
dht_router.go Default DHT version set to Unknown Jun 25, 2018
dht_test.go Fixed tests May 29, 2018
instance.go Modified save/restore subsystem Oct 29, 2018
main.go Flag description updated Dec 7, 2018
main_test.go Fixed tests Oct 29, 2018
rest.go * Implemented support for PMTU May 28, 2018
restore.go Forced restored envs to be alive Nov 5, 2018
restore_test.go Fixed restore of file Oct 30, 2018
service_posix.go Fixed build under Windows Jan 8, 2018
service_windows.go Fixed Windows build Nov 8, 2018
set.go New communication protocol for automatic IP set Nov 29, 2018
show.go New communication protocol for automatic IP set Nov 29, 2018
start.go More debug logs for start and stop commands Nov 2, 2018
status.go New communication protocol for automatic IP set Nov 29, 2018
stop.go More debug logs for start and stop commands Nov 2, 2018
upload-ipfs.sh deb-builder Sep 5, 2018

README.md

P2P Cloud

Build Status - master Build status codecov Go Report Card GoDoc

P2P Cloud project allows users to build their private networks.

Building

p2p is shipped with a Makefile, so building it a pretty easy task. You just run

make

command to buld a single binary for current platform or you can try to

make all

in order to build p2p for linux, windows and macos

Running

MacOS users should install TUN/TAP driver and create a config.yaml file with the following line: iptool: /sbin/ifconfig

Windows users should install TAP-windows NDIS6 driver from OpenVPN suite

p2p is managed by a daemon that controls every instance of your private networks (if you're participating in a different networks at the same time). To start a daemon simply run p2p daemon command. Note, that application will run in a foreground mode.

p2p daemon

Now you can start manage the daemon with p2p command line interface. To start a new network or join existing you should run p2p application with a -start flag.

p2p start -ip 10.10.10.1 -hash UNIQUE_STRING_IDENTIFIER

You should specify an IP address which will be used by your virtual network interface. All the participants should have an agreement on ranges of IP addresses they're using. In the future this will become unnecessary, because DHCP-like service will be implemented.

With a -hash flag user should specify a unique name of his network.

Instance of P2P network can be stopped with use of stop command

p2p stop -hash UNIQUE_STRING_IDENTIFIER

To learn more about available commands run

p2p help

or append name of command to print detailed help about this command. For example:

p2p help daemon

will display detailed information about daemon command

Development & Branching Model

  • 'master' is always stable.
  • 'dev' contains latest development snapshot that is under heavy testing