updated walkthrough doc
This commit is contained in:
@@ -1,38 +1,54 @@
|
|||||||
Walkthrough
|
Walkthrough
|
||||||
======
|
======
|
||||||
|
|
||||||
In this document we'll run through a simple example which should demonstrate the concept of the ZeroTierSDK. For this tutorial you'll need two devices (or at least the ability to run a VM or something like Docker).
|
In this document we'll run through a simple example which should demonstrate the concept of the ZeroTier SDK. For this tutorial you'll need two devices (or at least the ability to run a VM or something like [Docker](https://www.docker.com/)). We will demonstrate a simple TCP server application intercepted on linux. This is only one of *many* ways the SDK can be used, but it'll at least convey the core concept how how the intercept works.
|
||||||
|
|
||||||
### Create your virtual network
|
### On your first device:
|
||||||
- Download ZeroTier at (zerotier.com)[https://www.zerotier.com/]
|
- Download ZeroTier at [zerotier.com](https://www.zerotier.com/product-one.shtml)
|
||||||
- Install it on a device/computer
|
- Install it on a device/computer
|
||||||
- Create an account and new virtual network at (my.zerotier.com)[https://my.zerotier.com/]
|
- Create an account and new virtual network at [my.zerotier.com](https://my.zerotier.com/)
|
||||||
- Join your device to the network and assign it an address `zerotier-cli join <nwid>`
|
- Join your device to the network and assign it an address `zerotier-cli join <nwid>`
|
||||||
- Use `zerotier-cli listnetworks` to verify that you've joined the network.
|
- Use `zerotier-cli listnetworks` to verify that you've joined the network.
|
||||||
|
***
|
||||||
|
|
||||||
### On your second device, Build the SDK
|
|
||||||
- On Linux: `make linux SDK_PICOTCP=1 SDK_IPV4=1 SDK_DEBUG=1; make -s check; ls -lG build`
|
|
||||||
|
|
||||||
### Build test apps
|
|
||||||
|
### On your second device:
|
||||||
|
|
||||||
|
#### Build the SDK
|
||||||
|
```
|
||||||
|
make linux SDK_PICOTCP=1 SDK_IPV4=1 SDK_DEBUG=1; make -s check; ls -lG build
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Build test apps
|
||||||
|
|
||||||
```
|
```
|
||||||
make tests
|
make tests
|
||||||
```
|
```
|
||||||
|
|
||||||
### Start the SDK service
|
#### Start the SDK service in the background
|
||||||
```
|
```
|
||||||
./zerotier-cli -U -p8000 /network/homepath &
|
./zerotier-cli -U -p8000 /netpath &
|
||||||
```
|
```
|
||||||
|
|
||||||
### Set environment variables
|
#### Set environment variables
|
||||||
```
|
```
|
||||||
export ZT_NC_NETWORK=/network/homepath/nc_XXXXXXXXXXXXXXXX
|
export ZT_NC_NETWORK=/netpath/nc_XXXXXXXXXXXXXXXX
|
||||||
export LD_PRELOAD=./libztintercept.so
|
export LD_PRELOAD=./libztintercept.so
|
||||||
```
|
```
|
||||||
|
|
||||||
### Start your app
|
Where `netpath` can be any path you'd like the client's keys and configuration to be stored and `XXXXXXXXXXXXXXXX` is the 16-digit network ID.
|
||||||
|
|
||||||
|
#### Start your app
|
||||||
```
|
```
|
||||||
./build/tests/linux.tcpserver4.out 8001
|
./build/tests/linux.tcpserver4.out 8001
|
||||||
```
|
```
|
||||||
|
|
||||||
*Now, you'll note that your new TCP server is automatically intercepted and available at on port 80001*
|
Now, on your first device, `./build/tests/linux.tcpclient4.out <ip> 8001`
|
||||||
|
|
||||||
|
Now, you'll note that your new TCP server is automatically intercepted and available at on port 8001.
|
||||||
|
***
|
||||||
|
|
||||||
|
|
||||||
|
You've just uplifted your app onto your private ZeroTier network.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user