NXTER.ORG

SuperMesh.io test release

Nxters, get your Raspi2 running;
Grewalsatinder has pushed a SuperMesh.io test release.

Grewalsatinder writes: ‘SuperMesh.io Test Release is a small bundle of applications and services which provides easy access to various decentralized technologies like MeshNET, NXT Full Client, Decentralized DNSs, TOR websites/services (e.g. onion websites).

It’s a basic feature build/OS which enables any person with some technical knowledge to build their own Raspberry Pi device and use it as a smart router providing easy access to MeshNET and Decentralized technologies’.

You can find an updated grewalsatinder’s roadmap for SuperMesh.io HERE.

You can find build updates on SuperMesh’s Github repo https://github.com/satindergrewal/SuperMesh and official forum thread till the official website gets ready.

Note that there aren’t any .nxt websites to explore in the meshnet yet, as we just entered it. Eventually there will be, for example nxter.nxt will be set up soon for you to enjoy in the meshnet. Until then, you can find a list of useful meshnet websites related to the Hyperboria (CJDNS) network here: http://hyperboria.be/.
SuperMesh.io and Nxt are not related to CJDNS and Hyperboria in any way.
This first test release is for Raspi2 users only and will not be stable on older Raspberry Pi models. Upcoming releases may support all the old RasPi models.

SuperMesh.io test relase 0.01

Included Features:
1. NXT Full Node.
2. Updates NXT automatically.
3. Access to .nxt DNS.
4. Decentralized DNS with IPv4 & IPv6 Support.
5. HotSpot WiFi.
6. Access MeshNET services as SuperMesh.io WiFi client with ease.
7. Access TOR services (.onion) as SuperMesh.io WiFi client with ease.
8. Run NXT Full Client using TOR Network.
9. Run NXT Full Client with IPv6 Support Enabled.
10. Easy access to NXT client via web page.
11. Auto Configure CJDNS and connect it to Hyperboria network.
12. Easy access to MeshNET websites/services as SuperMesh.io WiFi client.

NOTE: This test release is still experimental. So, please evaluate it, test it, and if possible break it and/or improve its security features. Then share your findings and any solutions with the community as part of the ongoing process to optimise security and efficient usage. If you do enhance its security, please share your solution, so I can include that in the next build and put your name in credits.

SuperMesh.io Test Release:
Version: Beta 0.01
Date: 12 July 2015
File: SuperMesh.io-beta-0.01-12-07-2015.img
MD5: 7627b0ad853f4989baefc6ee844e8b7b
SHA256: fe52125928e8126cff128d3fe8937731e3fce395d8cf999e07bd04bb80ff3e1c

File Download Link: https://mega.nz/#!rUsiGQRB!6eFNsoUCAnnlnz8wQCM4vBe8iTUEdIa43h6wCtdFpdw

Recommended Hardware:
1. Raspberry Pi 2.
2.1 Edimax WiFi Adaptor – Model EW-7811UN (for WiFi Access Point).
2.2 An additional Edimax WiFi Adaptor – Model EW-7811UN (for connecting your node to existing WiFi connection)
3. Monitor.
4. USB Keyboard & Mouse.
5. HDMI cable.
6. You can use micro USB Charger from most phones and cameras to power your Raspberry Pi.
7. microSD Card (8GB or 16GB) – I used SanDisk Extreme Plus. Little bit faster than usual.

You can follow the standard instructions from Raspberry Pi website to install SuperMesh.io image on microSD card: https://www.raspberrypi.org/documentation/installation/installing-images/README.md

SSH and Terminal Access Details
SSH/Terminal Login:
Username: pi
Password: SpaceMesh

#### IMPORTANT: Change the default Password ####
It’s very important to change your SuperMesh.io node’s default login password to something different and stronger. You can change the password after logging in to SSH or Terminal using command ‘sudo raspi-config’. Use arrow keys and select second option ‘Change User Password’ to enter new password.

WiFi Access Point Access Details 
WiFi Access Point Info:
Default SSID: SuperMesh.io WiFi
Default Password: SpaceMesh.org

#### How to change your default WiFi Access Point’s Password ####
Default password of WiFi Access Point can be changed from file /etc/hostapd/hostapd.conf
Open the file and change the value of ‘wpa_passphrase’.

#### How to connect your SuperMesh.io node to existing WiFi connection ####
For that you’ll need to edit ‘/etc/wpa_supplicant/wpa_supplicant.conf’ file as root user. Use the following command:

Code:
sudo nano -c /etc/wpa_supplicant/wpa_supplicant.conf

If your existing WiFi connection does not need any password to connect to just enter its SSID on line 6. Replace word ‘YOUR_WIFI_ID_HERE’ with your SSID.

If your existing WiFi connection needs to be connected using a password, I have configured common settings there. Go to line 13 and update your WiFi SSID where it says ‘YOUR_WIFI_ID_HERE’, and replace the string ‘YOUR_WIFI_PASSWORD’ with your existing WiFi connection’s password.

Save the file, and restart networking service:

Code:
sudo /etc/init.d/networking restart

Or just reboot your system with command ‘sudo reboot’. Next time you boot up your system, it should connect to WiFi. If not, you have to find your correct settings for WiFi configuration. Search ‘How to setup WiFi on Raspberry Pi’. That might be of some help. 🙂

TOR Network and Access Details
System by default connects to clearnet. It does not enable TOR access for WiFi clients by default. There are two ways to enable TOR access to WiFi clients:

1. Enable line 21 from file /etc/network/iptables.ipv4.nat. Remove ‘#’ from the line, save it and restart network interface, or just reboot the system. This will route all traffic of WiFi connected clients by default through TOR. Whatever service they access will pass through TOR network. You can visit website ‘ipchicken.com’ and it will show you your public IP and a hostname if there’s one for that public IP.

But, some people still don’t trust the TOR service. That’s why I set it not as default to route all traffic of connected WiFi clients through TOR. In case you do not want to mess with iptables, you can use the second option.

2. Use SOCKS Proxy setting for your browser or applications to access TOR services or route through TOR network. The SOCKS Proxy details are as follows:
Code: [Select]
SOCKS Proxy IP: 192.168.10.1
SOCKS Proxy Port: 9050

With the second option you do not need to make any changes to iptables or anything else. Just connect to WiFi Access Point of SuperMesh.io node and use proxy settings to surf internet through TOR.

NXT Full Node Access Details 
NXT Full node is accessible via all network interfaces of SuperMesh.io node. If you do not know what IP address the SuperMesh.io node got when you plugged the LAN cable into it, you can just connect to its WiFi Access Point, and visit http://192.168.10.1. On that web page click on ‘NXT Full Node’ link and access your NXT Client’s Web interface.

The web page is static. This test release does not give any dynamic information, e.g. internet/TOR/MeshNET/LAN network conectivity info. However, future builds may do so.

NXT Full node by default connects to peers through clearnet/internet. It does not route through TOR. If you want to enable TOR for NXT Full Node, you can edit the file ‘/home/pi/nxtpi/nxtrun.sh’. Open the file and remove ‘#’ from 3rd line and add ‘#’ to 4th line. Save the file and reboot the system. Next time SuperMesh.io node boots up it will be connecting your NXT Full node to internet through TOR network.

NOTE: TOR settings for NXT Full node are exclusive to NXT only. Any changes made to iptables for WiFi clients will not enable NXT Full Node to route through TOR network.

CJDNS MeshNET Access Details 
When you boot your system for the first time SuperMesh.io node by default generates a new CJDNS configuration file and populates it with a CJDNS Public Peer. You do not need to do any single settings or change your CJDNS Settings. If you still want to play with it, or want to see what’s inside your CJDNS settings you can check the file /etc/cjdroute.conf.

If you want to see what your MeshNET IPv6 address is, enter command ‘ifconfig tun0’ or ‘ip addr show tun0’. The line with ‘inet6’ shows your IPv6 address.

If you want to confirm if you are connected to CJDNS MeshNET you can ping to my CJDNS Public Node IPv6 ‘fcdc:1bde:c1f4:4b9c:5a91:d33b:d771:d492’.

On Mac and Linux use command:
Code: [Select]
ping6 fcdc:1bde:c1f4:4b9c:5a91:d33b:d771:d492

On Windows use command:
Code: [Select]
ping 6 fcdc:1bde:c1f4:4b9c:5a91:d33b:d771:d492

HyperBoria Websites Access Details
The build is now able to access Hyperboria websites, as the SuperMesh’s own temporary CJDNS public peer got some nodes connected which connects us further to existing Hyperboria only websites like ‘uppit.us‘ or ‘socialno.de‘ or ‘nodescan.hype’ (by slothbag).

If any of you get access to a peer which connects to existing Hyperboria websites/services you can update/change your CJDNS config file (/etc/cjdroute.conf) by following this guide: https://wiki.projectmeshnet.org/How_To_Add_Peers

By adding that peer you’ll be able to connect to Hyperboria websites. But, maybe others still won’t.

#### How you can help NXT and SuperMesh.io Nodes to connect to Hyperboria network? ####
If you have made your SuperMesh.io node a public node, and your CJDNS is peered with a node which connects to Hyperboria, you can share your peer info with me, and I’ll add it to my CJDNS Public Peer. That will help other SuperMesh.io nodes out there connect to existing Hyperboria websites.

Make your own website/service exclusively available on CJDNS MeshNET

Yes, having this SuperMesh.io node gives you a very easy platform to build your own website or service and make it available on MeshNET. This test release of SuperMesh.io node comes with ‘NginX Web Server’ installed with it. It’s a very lightweight web server. Do your research and check out how you can use your Raspberry Pi as a website server or for any other kind of services.

Decentralized DNSs on SuperMesh.io node
This test release has everything set up to access services accessible through Decentralized DNS .nxt.

You can setup your NXT Aliases to be used as Decentalized DNS. All existing NXT Aliases can be used with .nxt.

Example: If I have NXT Alias name ‘satinder’ registered in my NXT Account, I can set it with type ‘Other’ and use following JSON data in ‘Data’ field:
Code: [Select]
{“ip”:”123.123.123.123″,”map”:{“www”:{“alias”:””}}}

Once the changes are saved and confirmed on NXT Blockchain, I can access my website using ‘satinder.nxt’ or ‘www.satinder.nxt’.

If you need to set up your NXT Alias as a Decentralized DNS for IPv6 address (as for your MeshNET node), you can use the following JSON string:
Code: [Select]
{“ip6”: [“your_ipv6_address_here”]}

Grewalsatinder writes: ‘I had issues while testing NXT Alias as Decentralized DNSs. Mostly the issues were due to wrong JSON formatting. You can copy your JSON string to the following online JSON editor and verify if your JSON string is valid: http://www.jsoneditoronline.org/. Once confirmed, only then use your JSON string as Data for NXT Alias to make a Decentralized DNS.

It’s thanks to communities like NXT, CJDNS, Raspberry Pi, DNSChain, SuperNET and so many developers from related communities that this build was possible. I hope you’ll like this SuperMesh.io test release, and join this project to improve it further’.

Credit:
toenu – for adding .nxt support to DNSChain.
slothbag – for making base of Decentralised DNS on NXT Blockchain

If you want to support grewalsatinder for his efforts you can send some love in the form of NXTs.
His NXT address NXT-QK5L-7YM9-YPVF-55GL5

View this in: Español

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.