<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://sudoroom.org/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=S3th</id>
	<title>Sudo Room - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://sudoroom.org/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=S3th"/>
	<link rel="alternate" type="text/html" href="https://sudoroom.org/wiki/Special:Contributions/S3th"/>
	<updated>2026-04-25T11:43:43Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.37.2</generator>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/MTP2018&amp;diff=11413</id>
		<title>Mesh/MTP2018</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/MTP2018&amp;diff=11413"/>
		<updated>2018-07-22T18:22:46Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Roles */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
[[File:Mesh earth2018.png|frameless|center]]&lt;br /&gt;
= '''Mesh the Planet! 2018 Unconference''' =&lt;br /&gt;
As a followup to the Internet Archive's [https://decentralizedweb.net Decentralized Web Summit] taking place July 31 - August 3rd, members of [[Mesh|Sudo Mesh]] will be hosting an unconference to bring together the decentralized internets community in the shared spirit of meshing the planet!&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Logistics ==&lt;br /&gt;
* What: An unconference / hackathon around building and deploying the decentralized web&lt;br /&gt;
* When: Saturday, August 4th, 11:30 - 6pm&lt;br /&gt;
* Where: The [https://omnicommons.org Omni Commons]' [https://sudoroom.org Sudo Room] and/or its ballroom, located @ [https://www.openstreetmap.org/node/2060837779 4799 Shattuck Ave, Oakland, CA]&lt;br /&gt;
** Roughly half a mile north of the MacArthur BART station, ~20 mins from San Francisco&lt;br /&gt;
* RSVP on [https://viewer.scuttlebot.io/%25d2Q58lpyLFWser3kjAevX2zzcdr5M2k7Gnh6%2Bq2FE0c%3D.sha256 SSB]&lt;br /&gt;
* LINK TO EVENTBRITE HERE&lt;br /&gt;
&lt;br /&gt;
== Roles ==&lt;br /&gt;
(Each role needs multiple volunteers. Add your name to anything you are wiling to do!)&lt;br /&gt;
* Front desk (6 volunteers) - Mai, Seth&lt;br /&gt;
* MCs (2 volunteers) - Mai, &lt;br /&gt;
* Lightning talk facilitators - Mai, Benny, &lt;br /&gt;
* Hackathon hardware facilitators (4 volunteers) - Seth &lt;br /&gt;
* Food - Scott/nanomonkey, &lt;br /&gt;
* [[Sudomate]] - Jenny&lt;br /&gt;
* Setup (8+ volunteers) - Jenny, Benny, Seth&lt;br /&gt;
* Cleanup (8+ volunteers) - Jenny, Seth&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* Collaborative session notes taken at https://peoplesopen.net/pad/p/SESSION__NAME&lt;br /&gt;
* Notes posted to this wiki in the corresponding agenda lines below, or use the format: https://sudoroom.org/wiki/Mesh/MTP2018/SESSION_NAME&lt;br /&gt;
* Livestream for remote participation?&lt;br /&gt;
&lt;br /&gt;
== Material Resources ==&lt;br /&gt;
See Aspiration Tech's [https://facilitation.aspirationtech.org/index.php?title=Logistics:Materials_Shopping_List Materials Shopping List]&lt;br /&gt;
* 3&amp;quot; x 5&amp;quot; un-ruled stickie notes, 1 pad per about 5 participants (Jenny will buy)&lt;br /&gt;
* Fine point Sharpie markers (Jenny will buy)&lt;br /&gt;
&lt;br /&gt;
* 1/4&amp;quot; color dots for voting (in office)&lt;br /&gt;
* Movable walls! (in ballroom)&lt;br /&gt;
* Infinity coffee, snacks, and hydrating beverages&lt;br /&gt;
* Tables and chairs&lt;br /&gt;
* Power strips&lt;br /&gt;
* Extension cords&lt;br /&gt;
* External monitors &lt;br /&gt;
* Mesh testbeds - Sudo Mesh, Toronto Mesh, others?&lt;br /&gt;
* Cable crimping table - Cat5 cable, crimpers, &lt;br /&gt;
* Swag table - buttons, stickers, pins, zines, tshirts etc!&lt;br /&gt;
* Nametags&lt;br /&gt;
* Sign-in sheet / pens&lt;br /&gt;
* BYOI / PON schwag&lt;br /&gt;
* Projector&lt;br /&gt;
* Several easel pads - https://www.staples.com/Easel-Pads/cat_CL140915 (pods can use these to write down the list of presenters)&lt;br /&gt;
&lt;br /&gt;
= Agenda =&lt;br /&gt;
* 11:30 - 12:00 pm â€” Sign in/lunch&lt;br /&gt;
* 12:00 - 12:30 pm â€” Introduction&lt;br /&gt;
* 12:30 - 02:00 pm â€” Lightening talks/discussions&lt;br /&gt;
* 02:00 - 02:15 pm â€” Break&lt;br /&gt;
* 02:15 - 02:45 pm â€” Structured Brainstorm&lt;br /&gt;
* 02:45 - 05:30 pm â€” Hackathon&lt;br /&gt;
* 05:30 - 06:00 pm â€” Demos&lt;br /&gt;
* 06:00 - Late â€” Evening fun timez&lt;br /&gt;
&lt;br /&gt;
=== 11:30 - 12 pm Sign-in ===&lt;br /&gt;
Lunch/coffee&lt;br /&gt;
&lt;br /&gt;
=== 12 - 12:30pm Introduction ===&lt;br /&gt;
* Welcome to BYOI/Dweb unconference: review agenda, [https://omnicommons.org/wiki/Safer_Space_Policy code of conduct]&lt;br /&gt;
*  Introduction to the Omni (Jenny?)&lt;br /&gt;
* Overview of mesh networks and People's Open Network (needs volunteer)&lt;br /&gt;
&lt;br /&gt;
=== 12:30 - 2pm Lightning talks/discussions ===&lt;br /&gt;
* For the first 1.5 hours we'll do five-minute lightning talks. This is an opportunity to get on a soap box or facilitate a discussion for 5 minutes about whatever the hell you want. We're modeling this after the [http://lostlevels.net/ lostlevels] unconference.&lt;br /&gt;
* Depending on how many people attend, there will be a different number of simultaneous presentation pods. We need one pod per 15 presenters. This way each pod will finish presenting after about 15 presentations * (5 min presentation + 1 min setup) = 1.5 hrs&lt;br /&gt;
* A presentation pod consists of:&lt;br /&gt;
** 1 timekeeper (needs a volunteer)&lt;br /&gt;
** A bunch of presenters&lt;br /&gt;
** Probably some audience members who are not going to present&lt;br /&gt;
** A space in which to present (probably just a quadrant of the ballroom, unless it gets too noisy. no projection or amplification.)&lt;br /&gt;
&lt;br /&gt;
==== The Timekeeper ====&lt;br /&gt;
* The timekeeper is extremely important! Every pod needs its own timekeeper.&lt;br /&gt;
* The responsibilities of the timekeeper are:&lt;br /&gt;
** Start a 5 minute timer when a presentation begins&lt;br /&gt;
** Give the presenter a warning when they have only 1 minute left&lt;br /&gt;
&lt;br /&gt;
==== The Presenter ====&lt;br /&gt;
* Congratulations! You have been selected to present at Mesh the Planet 2018! Competition was fierce, but your proposal was exquisite. Now's your chance:&lt;br /&gt;
** You will have 5 minutes to present about anything you want *or* 10 minutes to facilitate a discussion about anything you want&lt;br /&gt;
** Find a facilitator with an easel pad and tell them your (pseudo)name and the title of your presentation / discussion. They will write both down on the easel pad.&lt;br /&gt;
** The facilitator may ask you to find a different facilitator if their easel pad is already filled up.&lt;br /&gt;
** Don't wander too far! When it's your turn to present, the facilitator will call your name out.&lt;br /&gt;
** The facilitator will give you a visual warning when you have only 1 minute left, and when your time has run out.&lt;br /&gt;
** Please be courteous and get off the soapbox when your time is up so we can move on to the next presentation.&lt;br /&gt;
&lt;br /&gt;
==== The Audience Members ====&lt;br /&gt;
* When you are not presenting, you are an audience member! Your responsibilities are:&lt;br /&gt;
** Pay attention to your peers!&lt;br /&gt;
** Move to a different pod if you are bored&lt;br /&gt;
** Applaud enthusiastically when the presentation is over&lt;br /&gt;
&lt;br /&gt;
=== 2pm - 2:15pm Break ===&lt;br /&gt;
&lt;br /&gt;
=== 2:15 - 2:45 Structured Brainstorm with Sticky Notes ===&lt;br /&gt;
* 3 min - Writing by yourself (as many ideas as possible)&lt;br /&gt;
* 10 min - Posting notes to wall + organizing notes into related groups&lt;br /&gt;
* 15 min - Sharing out what groups of ideas developed / deciding what to hack on in remaining time&lt;br /&gt;
&lt;br /&gt;
=== 2:30pm - 5:30pm: HACKATHON ===&lt;br /&gt;
==== Deploying mesh services live to People's Open Network! ====&lt;br /&gt;
* We'll have a stack of Home Nodes (WD MyNet routers) and NAS devices and can spend the day deploying various services and building our own internet!&lt;br /&gt;
&lt;br /&gt;
=== 5:30pm - 6pm Demos ===&lt;br /&gt;
- Show off what you hacked on in Sudo Room&lt;br /&gt;
&lt;br /&gt;
=== 6pm - Late Evening funtimes ===&lt;br /&gt;
* Food? Karaoke? Dance party??&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Inspiration =&lt;br /&gt;
* Aspiration Tech has a great [https://facilitation.aspirationtech.org/index.php?title=Main_Page wiki on facilitation] for rad unconferences - check out their [https://facilitation.aspirationtech.org/index.php?title=Agenda:Session_Design Session Design Guidelines], [https://facilitation.aspirationtech.org/index.php?title=Agenda:Guidelines Agenda Guidelines], and [https://facilitation.aspirationtech.org/index.php?title=Agenda:Hacking Agenda Hacking],&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11283</id>
		<title>Mesh/Technical Overview</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11283"/>
		<updated>2018-06-17T04:30:05Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Node Monitoring */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Stale]]&lt;br /&gt;
'''This page has been marked as [[:Category:Stale|stale]], as it is outdated to the point of providing significant misinformation. Please update it before linking other pages here.'''&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
== Home and extender nodes ==&lt;br /&gt;
&lt;br /&gt;
''Note: You can also read the [[home node|non-technical explanation of home nodes and extender nodes]].''&lt;br /&gt;
&lt;br /&gt;
Our mesh has two types of nodes: Home nodes and extender nodes.&lt;br /&gt;
&lt;br /&gt;
The home node is a 5 ethernet port wifi router that runs the full sudowrt firmware. A network of home nodes can make a mesh network if they are within the same proximity e.g 200 meters and line-of-sight of each other. Beyond the home nodes broadcast area, an extender node needs to be connected to a home node to communicate to distant neighbours. An extender node runs a minimal firmware and does nothing on its own, but if its connected to a home node it will serve as an extra radio and extend the reach of the network.&lt;br /&gt;
&lt;br /&gt;
The node operator can choose to put a home node in their living room and if they decide they want a high speed directional link to a neighbour then they can put e.g. a Nanobridge M5 running the extender node firmware on their roof and connect it via ethernet to the home node. Or they could put a Nanostation M2 pointed out of their window and extend the signal further out into the street or to nearby neighbours. Each extender node extends all three networks (explained in the next section).&lt;br /&gt;
&lt;br /&gt;
For home nodes we are currently supporting these off-the-shelf router [https://sudoroom.org/wiki/Mesh/WalkThrough#Download.2FBuild models]. We are not planning to support anything else for the time being, though if you have a good reason please let us know. For extender nodes we are currently supporting the Ubiquiti M series [https://sudoroom.org/wiki/Mesh/Flashing_extender_nodes#Flash_the_Extender_Node routers].&lt;br /&gt;
&lt;br /&gt;
The mesh mainly uses wifi routers with Atheros chipsets and running [https://github.com/sudomesh/sudowrt-firmware our own firmware] based on [http://openwrt.org/ OpenWRT], [http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ Babel] and wlan slovenja's [https://github.com/sudomesh/tunneldigger tunneldigger]. &lt;br /&gt;
&lt;br /&gt;
Node-owners can choose to connect the nodes to their existing internet connection using ethernet. If they have Internet access, they can share a portion of it with the mesh. The amount of bandwidth shared is limited with the tool 'tc'. It is chosen at node-configuration time and can be changed using the simple built-in web admin interface.&lt;br /&gt;
&lt;br /&gt;
== The three wifi networks and IP assignment ==&lt;br /&gt;
&lt;br /&gt;
The nodes each run three wifi networks (three SSIDs on the same physical wifi interfaces):&lt;br /&gt;
&lt;br /&gt;
* The Open network with SSID peoplesopen.net is an open access point. Most people will use the network by connecting to this.&lt;br /&gt;
* The Mesh network with SSID pplsopen.net-node2node is an ad-hoc network that the nodes use to mesh with each other using the Babel mesh protocol.&lt;br /&gt;
* A private wifi network SSID that is named by the node owner (or a name is generated by makenode) and uses WPA2-PSK.&lt;br /&gt;
&lt;br /&gt;
All three of these networks are available on both 2.4 and 5 GHz on the home node. They are also all three available on any extender nodes plugged in to the home node. The three different networks are extended over a single ethernet cable using VLANs.&lt;br /&gt;
&lt;br /&gt;
If a node-owner is sharing internet, then the node will create a layer 2 (L2TP) tunnel to a VPN server on the Internet using tunneldigger. Babel (the mesh routing protocol) will connect over this tunnel to other nodes on the mesh, so the mesh can route traffic over the internet if no wifi path to another node is available (e.g. other nodes are physically too far away). When people connect to the peoplesopen.net access point and try to access the Internet, the traffic will flow through the VPuN, and the source IP of requests will appear to be the VPuN with the sudo mesh organization listed as the abuse contact. &lt;br /&gt;
&lt;br /&gt;
The nodes run DHCP servers and each have a /24 IPv4 subnet in the 100.64.0.0/10 range that is statically assigned by coordination between mesh groups and individuals hosting and administrating their own nodes on People's Open Network (currently only the sudo mesh organization).&lt;br /&gt;
&lt;br /&gt;
The private network does not limit bandwidth and provides access to both direct access to the Internet (if the node owner has hooked the node up to the Internet) and access to the mesh. Each node's private network runs on 172.30.0.0/16 and uses NAT between the private network and the mesh. It does not accept any new incoming connections from the mesh onto the 172.30.0.0/16 subnet.&lt;br /&gt;
&lt;br /&gt;
== Accessing Home Node via SSH ==&lt;br /&gt;
&lt;br /&gt;
Your home node is accessible via the [https://wiki.openwrt.org/doc/uci/dropbear Dropbear] Secure Shell (SSH) server on port 22.&lt;br /&gt;
&lt;br /&gt;
The 4 Ethernet ports that are provided with your router should be configured as follows:&lt;br /&gt;
&lt;br /&gt;
# Private network with DHCP of 172.30.0.x network addresses&lt;br /&gt;
# Public network with DHCP of 100.64.x.x network addresses (SudoMesh network)&lt;br /&gt;
# NotDHCP for Extender 1&lt;br /&gt;
# NotDHCP for Extender 2&lt;br /&gt;
&lt;br /&gt;
This may not apply to your router. For instance, the TP-Link N750 uses the opposite port assignment, with port 3 for private network, and port 4 for public SudoMesh/PeoplesOpen.net network.&lt;br /&gt;
&lt;br /&gt;
=== Network Settings ===&lt;br /&gt;
&lt;br /&gt;
=== Default Build Configuration ===&lt;br /&gt;
&lt;br /&gt;
The IP address of your home node is &amp;lt;tt&amp;gt;172.22.0.1&amp;lt;/tt&amp;gt; prior to configuration via the [https://github.com/sudomesh/makenode makenode] utility. You can SSH into the node as &amp;lt;tt&amp;gt;root&amp;lt;/tt&amp;gt; using the password 'meshtheplanet' after setting up your computer to use an IP on the 172.22.0.0/16 network.&lt;br /&gt;
&lt;br /&gt;
=== Post Makenode Configuration ===&lt;br /&gt;
&lt;br /&gt;
The private network configuration uses a 172.30.0.0/16 network with DHCP available for connected clients. You can configure your workstation to use the following manual network configuration so that you can SSH into your home node. &lt;br /&gt;
&lt;br /&gt;
* IP Address: 172.30.0.9 (or anything other than 172.30.0.1)&lt;br /&gt;
* Netmask: 255.255.255.0&lt;br /&gt;
* Gateway: 172.30.0.1&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
The IP of your home node on the private network is &amp;lt;tt&amp;gt;172.30.0.1&amp;lt;/tt&amp;gt;, with the root password you specified when running &amp;lt;tt&amp;gt;makenode&amp;lt;/tt&amp;gt; to configure it.&lt;br /&gt;
&lt;br /&gt;
  ssh root@172.30.0.1&lt;br /&gt;
  The authenticity of host '172.30.0.1 (172.30.0.1)' can't be established.&lt;br /&gt;
  RSA key fingerprint is b8:9d:4a:2f:1b:f5:e1:ae:b8:19:5b:70:92:8b:7f:34.&lt;br /&gt;
  Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&lt;br /&gt;
After accepting the key by entering 'yes' and pressing ENTER, it will ask you for the root password. &lt;br /&gt;
&lt;br /&gt;
=== SSH Keys ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to add your ssh key to the router (instead of using a root password), add it to the &amp;lt;tt&amp;gt;configs/authorized_keys&amp;lt;/tt&amp;gt; file. You'll see that there are 3 other keys there for our developers. You can remove them if you'd like, but they're currently the only way we can provide remote support. During the alpha test phase we ask that you consider whether you are able to do diagnostics/debugging yourself before you remove them.&lt;br /&gt;
&lt;br /&gt;
== Node flashing and configuration ==&lt;br /&gt;
&lt;br /&gt;
One of our medium-term goals is to be able to sell nodes on our website and minimize the amount of work required to re-flash/configure the nodes and provide documentation for the user. To facilitate this, our current process for new nodes is:&lt;br /&gt;
&lt;br /&gt;
* A new node is flashed manually with the [https://github.com/sudomesh/sudowrt-firmware sudowrt] firmware.&lt;br /&gt;
* The node is then configured by a sudo mesh volunteer using our [https://github.com/sudomesh/makenode makenode] software.&lt;br /&gt;
* Makenode generates SSH keys, a SSH root password, a web admin password and a private wifi password. Then it configures the node, saves the info in the [https://github.com/sudomesh/node-database node database] and shuts down the node.&lt;br /&gt;
* Makenode then automatically [https://github.com/sudomesh/ql570 prints a sticker] containing some basic info including wifi and web admin passwords.&lt;br /&gt;
* The sudo mesh volunteer attaches the sticker to the nodes power supply and puts the node back in the box with a set of instructions for how to install and use the node.&lt;br /&gt;
* The node is shipped to the new node owner!&lt;br /&gt;
&lt;br /&gt;
== Node management ==&lt;br /&gt;
&lt;br /&gt;
All nodes set up by sudo mesh automatically allow root access using an SSH key held by a few trusted sudo mesh organizers. This is to allow us to update the firmware and troubleshoot network issues. We inform node-owners of this fact and tell them how to prevent sudo mesh from accessing their nodes, but also indicate that they should be ready to manage their own node if they choose to do this.&lt;br /&gt;
&lt;br /&gt;
== Node Monitoring ==&lt;br /&gt;
&lt;br /&gt;
Currently, the peoples open network can be monitored in real time with an [https://peoplesopen.herokuapp.com heroku app].&lt;br /&gt;
Our exit nodes communicate to this URL using a monitor.sh script. This relays information about the number of active routes and number of active gateways. If the exit node doesn't check-in for longer than 2 minutes, it is assumed to be down.&lt;br /&gt;
&lt;br /&gt;
==Detailed Documentation==&lt;br /&gt;
*[[Mesh/Tracking]] - Problems and solutions related to tracking, logging and anonymity&lt;br /&gt;
*[[Mesh/WalkThrough]] - Easy how-to for setting up OpenWRT&lt;br /&gt;
**[[Mesh/Flashing Extender Antennas]] - How-to for Ubiquiti routers&lt;br /&gt;
**[[Mesh/OpenWRT]] - Experiences with the OpenWRT router firmware&lt;br /&gt;
*[[Mesh/Firmware]] - Everything related to our firmware&lt;br /&gt;
**[[Mesh/Firmware/Overview]] - High level view&lt;br /&gt;
**[[Mesh/Firmware/Flash]] - How to install the sudowrt firmware based on openwrt with supported hardware&lt;br /&gt;
**[[Mesh/Firmware/Splash page]] - Splash page / Captive Portal&lt;br /&gt;
**[[Mesh/Firmware/Bandwidth shaping]] - QoS / Bandwidth shaping&lt;br /&gt;
**[[Mesh/Firmware/Zeroconf]] - Issues related to mDNS and DNS-SD&lt;br /&gt;
**[[Mesh/Firmware/MTU_issues]] - MTU issues&lt;br /&gt;
**[[Mesh/Firmware/Web Admin Development]] - Web admin development&lt;br /&gt;
*[[Mesh/Network topology]] - High-level explanation of the mesh network structure&lt;br /&gt;
*[[Mesh/Specs]] - Specs sheet on different access points&lt;br /&gt;
*[[Mesh/Frequencies]] - Information on different frequencies.&lt;br /&gt;
*[[Mesh/Software tools]] - List of useful mesh troubleshooting tools&lt;br /&gt;
*[[Mesh/Terms]] - Hidden Node, Fresnal zone, and other jargons&lt;br /&gt;
*[[Mesh/Power]] - Stuff about power usage, batteries and solar power.&lt;br /&gt;
*[[Mesh/Monitoring]] - notes about how to monitor systems&lt;br /&gt;
*[[Mesh/Spectrum]] - Different forms of spectral analysis&lt;br /&gt;
*[[Mesh/Hardware support]] - Officially and unofficially supported hardware / routers&lt;br /&gt;
*[[Mesh/Relay setup]] - Setting up a relay node&lt;br /&gt;
*[[Mesh/Exit setup]] - Setting up an exit node&lt;br /&gt;
*[[Mesh/Spectrum mapping]] - The setup we use for mapping local spectrum and wifi usage &lt;br /&gt;
**[[Mesh/Spectrum mapping/XO-1 Laptop]] - How to configure an XO-1 laptop for use with our spectrum mapping setup&lt;br /&gt;
* [[Mesh/Install]] - physical installation notes/stories&lt;br /&gt;
* [[Mesh/Diagrams]] - technical diagrams to support new outreach materials&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11282</id>
		<title>Mesh/Technical Overview</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11282"/>
		<updated>2018-06-17T04:28:53Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Home and extender nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Stale]]&lt;br /&gt;
'''This page has been marked as [[:Category:Stale|stale]], as it is outdated to the point of providing significant misinformation. Please update it before linking other pages here.'''&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
== Home and extender nodes ==&lt;br /&gt;
&lt;br /&gt;
''Note: You can also read the [[home node|non-technical explanation of home nodes and extender nodes]].''&lt;br /&gt;
&lt;br /&gt;
Our mesh has two types of nodes: Home nodes and extender nodes.&lt;br /&gt;
&lt;br /&gt;
The home node is a 5 ethernet port wifi router that runs the full sudowrt firmware. A network of home nodes can make a mesh network if they are within the same proximity e.g 200 meters and line-of-sight of each other. Beyond the home nodes broadcast area, an extender node needs to be connected to a home node to communicate to distant neighbours. An extender node runs a minimal firmware and does nothing on its own, but if its connected to a home node it will serve as an extra radio and extend the reach of the network.&lt;br /&gt;
&lt;br /&gt;
The node operator can choose to put a home node in their living room and if they decide they want a high speed directional link to a neighbour then they can put e.g. a Nanobridge M5 running the extender node firmware on their roof and connect it via ethernet to the home node. Or they could put a Nanostation M2 pointed out of their window and extend the signal further out into the street or to nearby neighbours. Each extender node extends all three networks (explained in the next section).&lt;br /&gt;
&lt;br /&gt;
For home nodes we are currently supporting these off-the-shelf router [https://sudoroom.org/wiki/Mesh/WalkThrough#Download.2FBuild models]. We are not planning to support anything else for the time being, though if you have a good reason please let us know. For extender nodes we are currently supporting the Ubiquiti M series [https://sudoroom.org/wiki/Mesh/Flashing_extender_nodes#Flash_the_Extender_Node routers].&lt;br /&gt;
&lt;br /&gt;
The mesh mainly uses wifi routers with Atheros chipsets and running [https://github.com/sudomesh/sudowrt-firmware our own firmware] based on [http://openwrt.org/ OpenWRT], [http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ Babel] and wlan slovenja's [https://github.com/sudomesh/tunneldigger tunneldigger]. &lt;br /&gt;
&lt;br /&gt;
Node-owners can choose to connect the nodes to their existing internet connection using ethernet. If they have Internet access, they can share a portion of it with the mesh. The amount of bandwidth shared is limited with the tool 'tc'. It is chosen at node-configuration time and can be changed using the simple built-in web admin interface.&lt;br /&gt;
&lt;br /&gt;
== The three wifi networks and IP assignment ==&lt;br /&gt;
&lt;br /&gt;
The nodes each run three wifi networks (three SSIDs on the same physical wifi interfaces):&lt;br /&gt;
&lt;br /&gt;
* The Open network with SSID peoplesopen.net is an open access point. Most people will use the network by connecting to this.&lt;br /&gt;
* The Mesh network with SSID pplsopen.net-node2node is an ad-hoc network that the nodes use to mesh with each other using the Babel mesh protocol.&lt;br /&gt;
* A private wifi network SSID that is named by the node owner (or a name is generated by makenode) and uses WPA2-PSK.&lt;br /&gt;
&lt;br /&gt;
All three of these networks are available on both 2.4 and 5 GHz on the home node. They are also all three available on any extender nodes plugged in to the home node. The three different networks are extended over a single ethernet cable using VLANs.&lt;br /&gt;
&lt;br /&gt;
If a node-owner is sharing internet, then the node will create a layer 2 (L2TP) tunnel to a VPN server on the Internet using tunneldigger. Babel (the mesh routing protocol) will connect over this tunnel to other nodes on the mesh, so the mesh can route traffic over the internet if no wifi path to another node is available (e.g. other nodes are physically too far away). When people connect to the peoplesopen.net access point and try to access the Internet, the traffic will flow through the VPuN, and the source IP of requests will appear to be the VPuN with the sudo mesh organization listed as the abuse contact. &lt;br /&gt;
&lt;br /&gt;
The nodes run DHCP servers and each have a /24 IPv4 subnet in the 100.64.0.0/10 range that is statically assigned by coordination between mesh groups and individuals hosting and administrating their own nodes on People's Open Network (currently only the sudo mesh organization).&lt;br /&gt;
&lt;br /&gt;
The private network does not limit bandwidth and provides access to both direct access to the Internet (if the node owner has hooked the node up to the Internet) and access to the mesh. Each node's private network runs on 172.30.0.0/16 and uses NAT between the private network and the mesh. It does not accept any new incoming connections from the mesh onto the 172.30.0.0/16 subnet.&lt;br /&gt;
&lt;br /&gt;
== Accessing Home Node via SSH ==&lt;br /&gt;
&lt;br /&gt;
Your home node is accessible via the [https://wiki.openwrt.org/doc/uci/dropbear Dropbear] Secure Shell (SSH) server on port 22.&lt;br /&gt;
&lt;br /&gt;
The 4 Ethernet ports that are provided with your router should be configured as follows:&lt;br /&gt;
&lt;br /&gt;
# Private network with DHCP of 172.30.0.x network addresses&lt;br /&gt;
# Public network with DHCP of 100.64.x.x network addresses (SudoMesh network)&lt;br /&gt;
# NotDHCP for Extender 1&lt;br /&gt;
# NotDHCP for Extender 2&lt;br /&gt;
&lt;br /&gt;
This may not apply to your router. For instance, the TP-Link N750 uses the opposite port assignment, with port 3 for private network, and port 4 for public SudoMesh/PeoplesOpen.net network.&lt;br /&gt;
&lt;br /&gt;
=== Network Settings ===&lt;br /&gt;
&lt;br /&gt;
=== Default Build Configuration ===&lt;br /&gt;
&lt;br /&gt;
The IP address of your home node is &amp;lt;tt&amp;gt;172.22.0.1&amp;lt;/tt&amp;gt; prior to configuration via the [https://github.com/sudomesh/makenode makenode] utility. You can SSH into the node as &amp;lt;tt&amp;gt;root&amp;lt;/tt&amp;gt; using the password 'meshtheplanet' after setting up your computer to use an IP on the 172.22.0.0/16 network.&lt;br /&gt;
&lt;br /&gt;
=== Post Makenode Configuration ===&lt;br /&gt;
&lt;br /&gt;
The private network configuration uses a 172.30.0.0/16 network with DHCP available for connected clients. You can configure your workstation to use the following manual network configuration so that you can SSH into your home node. &lt;br /&gt;
&lt;br /&gt;
* IP Address: 172.30.0.9 (or anything other than 172.30.0.1)&lt;br /&gt;
* Netmask: 255.255.255.0&lt;br /&gt;
* Gateway: 172.30.0.1&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
The IP of your home node on the private network is &amp;lt;tt&amp;gt;172.30.0.1&amp;lt;/tt&amp;gt;, with the root password you specified when running &amp;lt;tt&amp;gt;makenode&amp;lt;/tt&amp;gt; to configure it.&lt;br /&gt;
&lt;br /&gt;
  ssh root@172.30.0.1&lt;br /&gt;
  The authenticity of host '172.30.0.1 (172.30.0.1)' can't be established.&lt;br /&gt;
  RSA key fingerprint is b8:9d:4a:2f:1b:f5:e1:ae:b8:19:5b:70:92:8b:7f:34.&lt;br /&gt;
  Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&lt;br /&gt;
After accepting the key by entering 'yes' and pressing ENTER, it will ask you for the root password. &lt;br /&gt;
&lt;br /&gt;
=== SSH Keys ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to add your ssh key to the router (instead of using a root password), add it to the &amp;lt;tt&amp;gt;configs/authorized_keys&amp;lt;/tt&amp;gt; file. You'll see that there are 3 other keys there for our developers. You can remove them if you'd like, but they're currently the only way we can provide remote support. During the alpha test phase we ask that you consider whether you are able to do diagnostics/debugging yourself before you remove them.&lt;br /&gt;
&lt;br /&gt;
== Node flashing and configuration ==&lt;br /&gt;
&lt;br /&gt;
One of our medium-term goals is to be able to sell nodes on our website and minimize the amount of work required to re-flash/configure the nodes and provide documentation for the user. To facilitate this, our current process for new nodes is:&lt;br /&gt;
&lt;br /&gt;
* A new node is flashed manually with the [https://github.com/sudomesh/sudowrt-firmware sudowrt] firmware.&lt;br /&gt;
* The node is then configured by a sudo mesh volunteer using our [https://github.com/sudomesh/makenode makenode] software.&lt;br /&gt;
* Makenode generates SSH keys, a SSH root password, a web admin password and a private wifi password. Then it configures the node, saves the info in the [https://github.com/sudomesh/node-database node database] and shuts down the node.&lt;br /&gt;
* Makenode then automatically [https://github.com/sudomesh/ql570 prints a sticker] containing some basic info including wifi and web admin passwords.&lt;br /&gt;
* The sudo mesh volunteer attaches the sticker to the nodes power supply and puts the node back in the box with a set of instructions for how to install and use the node.&lt;br /&gt;
* The node is shipped to the new node owner!&lt;br /&gt;
&lt;br /&gt;
== Node management ==&lt;br /&gt;
&lt;br /&gt;
All nodes set up by sudo mesh automatically allow root access using an SSH key held by a few trusted sudo mesh organizers. This is to allow us to update the firmware and troubleshoot network issues. We inform node-owners of this fact and tell them how to prevent sudo mesh from accessing their nodes, but also indicate that they should be ready to manage their own node if they choose to do this.&lt;br /&gt;
&lt;br /&gt;
== Node Monitoring ==&lt;br /&gt;
&lt;br /&gt;
Currently, the peoples open network can be monitored in real time with an [https://peoplesopen.herokuapp.com heroku app]&lt;br /&gt;
Our exit nodes communicate to this URL using a monitor.sh script. This relays information about the number of active routes and number of active gateways. If the exit node doesn't check-in for longer than 2 minutes, it is assumed to be down.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Detailed Documentation==&lt;br /&gt;
*[[Mesh/Tracking]] - Problems and solutions related to tracking, logging and anonymity&lt;br /&gt;
*[[Mesh/WalkThrough]] - Easy how-to for setting up OpenWRT&lt;br /&gt;
**[[Mesh/Flashing Extender Antennas]] - How-to for Ubiquiti routers&lt;br /&gt;
**[[Mesh/OpenWRT]] - Experiences with the OpenWRT router firmware&lt;br /&gt;
*[[Mesh/Firmware]] - Everything related to our firmware&lt;br /&gt;
**[[Mesh/Firmware/Overview]] - High level view&lt;br /&gt;
**[[Mesh/Firmware/Flash]] - How to install the sudowrt firmware based on openwrt with supported hardware&lt;br /&gt;
**[[Mesh/Firmware/Splash page]] - Splash page / Captive Portal&lt;br /&gt;
**[[Mesh/Firmware/Bandwidth shaping]] - QoS / Bandwidth shaping&lt;br /&gt;
**[[Mesh/Firmware/Zeroconf]] - Issues related to mDNS and DNS-SD&lt;br /&gt;
**[[Mesh/Firmware/MTU_issues]] - MTU issues&lt;br /&gt;
**[[Mesh/Firmware/Web Admin Development]] - Web admin development&lt;br /&gt;
*[[Mesh/Network topology]] - High-level explanation of the mesh network structure&lt;br /&gt;
*[[Mesh/Specs]] - Specs sheet on different access points&lt;br /&gt;
*[[Mesh/Frequencies]] - Information on different frequencies.&lt;br /&gt;
*[[Mesh/Software tools]] - List of useful mesh troubleshooting tools&lt;br /&gt;
*[[Mesh/Terms]] - Hidden Node, Fresnal zone, and other jargons&lt;br /&gt;
*[[Mesh/Power]] - Stuff about power usage, batteries and solar power.&lt;br /&gt;
*[[Mesh/Monitoring]] - notes about how to monitor systems&lt;br /&gt;
*[[Mesh/Spectrum]] - Different forms of spectral analysis&lt;br /&gt;
*[[Mesh/Hardware support]] - Officially and unofficially supported hardware / routers&lt;br /&gt;
*[[Mesh/Relay setup]] - Setting up a relay node&lt;br /&gt;
*[[Mesh/Exit setup]] - Setting up an exit node&lt;br /&gt;
*[[Mesh/Spectrum mapping]] - The setup we use for mapping local spectrum and wifi usage &lt;br /&gt;
**[[Mesh/Spectrum mapping/XO-1 Laptop]] - How to configure an XO-1 laptop for use with our spectrum mapping setup&lt;br /&gt;
* [[Mesh/Install]] - physical installation notes/stories&lt;br /&gt;
* [[Mesh/Diagrams]] - technical diagrams to support new outreach materials&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11281</id>
		<title>Mesh/Technical Overview</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11281"/>
		<updated>2018-06-17T04:24:33Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Home and extender nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Stale]]&lt;br /&gt;
'''This page has been marked as [[:Category:Stale|stale]], as it is outdated to the point of providing significant misinformation. Please update it before linking other pages here.'''&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
== Home and extender nodes ==&lt;br /&gt;
&lt;br /&gt;
''Note: You can also read the [[home node|non-technical explanation of home nodes and extender nodes]].''&lt;br /&gt;
&lt;br /&gt;
Our mesh has two types of nodes: Home nodes and extender nodes.&lt;br /&gt;
&lt;br /&gt;
The home node is a 5 ethernet port wifi router that runs the full sudowrt firmware. A network of home nodes can make a mesh network if they are within the same proximity e.g 200 meters and line-of-sight of each other. Beyond the home nodes broadcast area, an extender node needs to be connected to a home node to broadcast to distant neighbours. An extender node runs a minimal firmware and does nothing on its own, but if its connected to a home node it will serve as an extra radio and extend the reach of the network.&lt;br /&gt;
&lt;br /&gt;
The node operator can choose to put a home node in their living room and if they decide they want a high speed directional link to a neighbour then they can put e.g. a Nanobridge M5 running the extender node firmware on their roof and connect it via ethernet to the home node. Or they could put a Nanostation M2 pointed out of their window and extend the signal further out into the street or to nearby neighbours. Each extender node extends all three networks (explained in the next section).&lt;br /&gt;
&lt;br /&gt;
For home nodes we are currently supporting these off-the-shelf router [https://sudoroom.org/wiki/Mesh/WalkThrough#Download.2FBuild models]. We are not planning to support anything else for the time being, though if you have a good reason please let us know. For extender nodes we are currently supporting the Ubiquiti M series [https://sudoroom.org/wiki/Mesh/Flashing_extender_nodes#Flash_the_Extender_Node routers].&lt;br /&gt;
&lt;br /&gt;
The mesh mainly uses wifi routers with Atheros chipsets and running [https://github.com/sudomesh/sudowrt-firmware our own firmware] based on [http://openwrt.org/ OpenWRT], [http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ Babel] and wlan slovenja's [https://github.com/sudomesh/tunneldigger tunneldigger]. &lt;br /&gt;
&lt;br /&gt;
Node-owners can choose to connect the nodes to their existing internet connection using ethernet. If they have Internet access, they can share a portion of it with the mesh. The amount of bandwidth shared is limited with the tool 'tc'. It is chosen at node-configuration time and can be changed using the simple built-in web admin interface.&lt;br /&gt;
&lt;br /&gt;
== The three wifi networks and IP assignment ==&lt;br /&gt;
&lt;br /&gt;
The nodes each run three wifi networks (three SSIDs on the same physical wifi interfaces):&lt;br /&gt;
&lt;br /&gt;
* The Open network with SSID peoplesopen.net is an open access point. Most people will use the network by connecting to this.&lt;br /&gt;
* The Mesh network with SSID pplsopen.net-node2node is an ad-hoc network that the nodes use to mesh with each other using the Babel mesh protocol.&lt;br /&gt;
* A private wifi network SSID that is named by the node owner (or a name is generated by makenode) and uses WPA2-PSK.&lt;br /&gt;
&lt;br /&gt;
All three of these networks are available on both 2.4 and 5 GHz on the home node. They are also all three available on any extender nodes plugged in to the home node. The three different networks are extended over a single ethernet cable using VLANs.&lt;br /&gt;
&lt;br /&gt;
If a node-owner is sharing internet, then the node will create a layer 2 (L2TP) tunnel to a VPN server on the Internet using tunneldigger. Babel (the mesh routing protocol) will connect over this tunnel to other nodes on the mesh, so the mesh can route traffic over the internet if no wifi path to another node is available (e.g. other nodes are physically too far away). When people connect to the peoplesopen.net access point and try to access the Internet, the traffic will flow through the VPuN, and the source IP of requests will appear to be the VPuN with the sudo mesh organization listed as the abuse contact. &lt;br /&gt;
&lt;br /&gt;
The nodes run DHCP servers and each have a /24 IPv4 subnet in the 100.64.0.0/10 range that is statically assigned by coordination between mesh groups and individuals hosting and administrating their own nodes on People's Open Network (currently only the sudo mesh organization).&lt;br /&gt;
&lt;br /&gt;
The private network does not limit bandwidth and provides access to both direct access to the Internet (if the node owner has hooked the node up to the Internet) and access to the mesh. Each node's private network runs on 172.30.0.0/16 and uses NAT between the private network and the mesh. It does not accept any new incoming connections from the mesh onto the 172.30.0.0/16 subnet.&lt;br /&gt;
&lt;br /&gt;
== Accessing Home Node via SSH ==&lt;br /&gt;
&lt;br /&gt;
Your home node is accessible via the [https://wiki.openwrt.org/doc/uci/dropbear Dropbear] Secure Shell (SSH) server on port 22.&lt;br /&gt;
&lt;br /&gt;
The 4 Ethernet ports that are provided with your router should be configured as follows:&lt;br /&gt;
&lt;br /&gt;
# Private network with DHCP of 172.30.0.x network addresses&lt;br /&gt;
# Public network with DHCP of 100.64.x.x network addresses (SudoMesh network)&lt;br /&gt;
# NotDHCP for Extender 1&lt;br /&gt;
# NotDHCP for Extender 2&lt;br /&gt;
&lt;br /&gt;
This may not apply to your router. For instance, the TP-Link N750 uses the opposite port assignment, with port 3 for private network, and port 4 for public SudoMesh/PeoplesOpen.net network.&lt;br /&gt;
&lt;br /&gt;
=== Network Settings ===&lt;br /&gt;
&lt;br /&gt;
=== Default Build Configuration ===&lt;br /&gt;
&lt;br /&gt;
The IP address of your home node is &amp;lt;tt&amp;gt;172.22.0.1&amp;lt;/tt&amp;gt; prior to configuration via the [https://github.com/sudomesh/makenode makenode] utility. You can SSH into the node as &amp;lt;tt&amp;gt;root&amp;lt;/tt&amp;gt; using the password 'meshtheplanet' after setting up your computer to use an IP on the 172.22.0.0/16 network.&lt;br /&gt;
&lt;br /&gt;
=== Post Makenode Configuration ===&lt;br /&gt;
&lt;br /&gt;
The private network configuration uses a 172.30.0.0/16 network with DHCP available for connected clients. You can configure your workstation to use the following manual network configuration so that you can SSH into your home node. &lt;br /&gt;
&lt;br /&gt;
* IP Address: 172.30.0.9 (or anything other than 172.30.0.1)&lt;br /&gt;
* Netmask: 255.255.255.0&lt;br /&gt;
* Gateway: 172.30.0.1&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
The IP of your home node on the private network is &amp;lt;tt&amp;gt;172.30.0.1&amp;lt;/tt&amp;gt;, with the root password you specified when running &amp;lt;tt&amp;gt;makenode&amp;lt;/tt&amp;gt; to configure it.&lt;br /&gt;
&lt;br /&gt;
  ssh root@172.30.0.1&lt;br /&gt;
  The authenticity of host '172.30.0.1 (172.30.0.1)' can't be established.&lt;br /&gt;
  RSA key fingerprint is b8:9d:4a:2f:1b:f5:e1:ae:b8:19:5b:70:92:8b:7f:34.&lt;br /&gt;
  Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&lt;br /&gt;
After accepting the key by entering 'yes' and pressing ENTER, it will ask you for the root password. &lt;br /&gt;
&lt;br /&gt;
=== SSH Keys ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to add your ssh key to the router (instead of using a root password), add it to the &amp;lt;tt&amp;gt;configs/authorized_keys&amp;lt;/tt&amp;gt; file. You'll see that there are 3 other keys there for our developers. You can remove them if you'd like, but they're currently the only way we can provide remote support. During the alpha test phase we ask that you consider whether you are able to do diagnostics/debugging yourself before you remove them.&lt;br /&gt;
&lt;br /&gt;
== Node flashing and configuration ==&lt;br /&gt;
&lt;br /&gt;
One of our medium-term goals is to be able to sell nodes on our website and minimize the amount of work required to re-flash/configure the nodes and provide documentation for the user. To facilitate this, our current process for new nodes is:&lt;br /&gt;
&lt;br /&gt;
* A new node is flashed manually with the [https://github.com/sudomesh/sudowrt-firmware sudowrt] firmware.&lt;br /&gt;
* The node is then configured by a sudo mesh volunteer using our [https://github.com/sudomesh/makenode makenode] software.&lt;br /&gt;
* Makenode generates SSH keys, a SSH root password, a web admin password and a private wifi password. Then it configures the node, saves the info in the [https://github.com/sudomesh/node-database node database] and shuts down the node.&lt;br /&gt;
* Makenode then automatically [https://github.com/sudomesh/ql570 prints a sticker] containing some basic info including wifi and web admin passwords.&lt;br /&gt;
* The sudo mesh volunteer attaches the sticker to the nodes power supply and puts the node back in the box with a set of instructions for how to install and use the node.&lt;br /&gt;
* The node is shipped to the new node owner!&lt;br /&gt;
&lt;br /&gt;
== Node management ==&lt;br /&gt;
&lt;br /&gt;
All nodes set up by sudo mesh automatically allow root access using an SSH key held by a few trusted sudo mesh organizers. This is to allow us to update the firmware and troubleshoot network issues. We inform node-owners of this fact and tell them how to prevent sudo mesh from accessing their nodes, but also indicate that they should be ready to manage their own node if they choose to do this.&lt;br /&gt;
&lt;br /&gt;
== Node Monitoring ==&lt;br /&gt;
&lt;br /&gt;
Currently, the peoples open network can be monitored in real time with an [https://peoplesopen.herokuapp.com heroku app]&lt;br /&gt;
Our exit nodes communicate to this URL using a monitor.sh script. This relays information about the number of active routes and number of active gateways. If the exit node doesn't check-in for longer than 2 minutes, it is assumed to be down.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Detailed Documentation==&lt;br /&gt;
*[[Mesh/Tracking]] - Problems and solutions related to tracking, logging and anonymity&lt;br /&gt;
*[[Mesh/WalkThrough]] - Easy how-to for setting up OpenWRT&lt;br /&gt;
**[[Mesh/Flashing Extender Antennas]] - How-to for Ubiquiti routers&lt;br /&gt;
**[[Mesh/OpenWRT]] - Experiences with the OpenWRT router firmware&lt;br /&gt;
*[[Mesh/Firmware]] - Everything related to our firmware&lt;br /&gt;
**[[Mesh/Firmware/Overview]] - High level view&lt;br /&gt;
**[[Mesh/Firmware/Flash]] - How to install the sudowrt firmware based on openwrt with supported hardware&lt;br /&gt;
**[[Mesh/Firmware/Splash page]] - Splash page / Captive Portal&lt;br /&gt;
**[[Mesh/Firmware/Bandwidth shaping]] - QoS / Bandwidth shaping&lt;br /&gt;
**[[Mesh/Firmware/Zeroconf]] - Issues related to mDNS and DNS-SD&lt;br /&gt;
**[[Mesh/Firmware/MTU_issues]] - MTU issues&lt;br /&gt;
**[[Mesh/Firmware/Web Admin Development]] - Web admin development&lt;br /&gt;
*[[Mesh/Network topology]] - High-level explanation of the mesh network structure&lt;br /&gt;
*[[Mesh/Specs]] - Specs sheet on different access points&lt;br /&gt;
*[[Mesh/Frequencies]] - Information on different frequencies.&lt;br /&gt;
*[[Mesh/Software tools]] - List of useful mesh troubleshooting tools&lt;br /&gt;
*[[Mesh/Terms]] - Hidden Node, Fresnal zone, and other jargons&lt;br /&gt;
*[[Mesh/Power]] - Stuff about power usage, batteries and solar power.&lt;br /&gt;
*[[Mesh/Monitoring]] - notes about how to monitor systems&lt;br /&gt;
*[[Mesh/Spectrum]] - Different forms of spectral analysis&lt;br /&gt;
*[[Mesh/Hardware support]] - Officially and unofficially supported hardware / routers&lt;br /&gt;
*[[Mesh/Relay setup]] - Setting up a relay node&lt;br /&gt;
*[[Mesh/Exit setup]] - Setting up an exit node&lt;br /&gt;
*[[Mesh/Spectrum mapping]] - The setup we use for mapping local spectrum and wifi usage &lt;br /&gt;
**[[Mesh/Spectrum mapping/XO-1 Laptop]] - How to configure an XO-1 laptop for use with our spectrum mapping setup&lt;br /&gt;
* [[Mesh/Install]] - physical installation notes/stories&lt;br /&gt;
* [[Mesh/Diagrams]] - technical diagrams to support new outreach materials&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11280</id>
		<title>Mesh/Technical Overview</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11280"/>
		<updated>2018-06-17T04:21:48Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Home and extender nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Stale]]&lt;br /&gt;
'''This page has been marked as [[:Category:Stale|stale]], as it is outdated to the point of providing significant misinformation. Please update it before linking other pages here.'''&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
== Home and extender nodes ==&lt;br /&gt;
&lt;br /&gt;
''Note: You can also read the [[home node|non-technical explanation of home nodes and extender nodes]].''&lt;br /&gt;
&lt;br /&gt;
Our mesh has two types of nodes: Home nodes and extender nodes.&lt;br /&gt;
&lt;br /&gt;
The home node is a 5 ethernet port wifi router that runs the full sudowrt firmware. A network of home nodes can make a mesh network if they are within the same proximity e.g 200 meters and line-of-sight of each other. Beyond the home nodes broadcast area, an extender node needs to be connected to a home node to broadcast to distant neighbours. An extender node runs a minimal firmware and does nothing on its own, but if its connected to a home node it will serve as an extra radio and extend the reach of the network.&lt;br /&gt;
&lt;br /&gt;
The node operator can choose to put a home node in their living room and if they decide they want a high speed directional link to a neighbour then they can put e.g. a Nanobridge M5 running the extender node firmware on their roof and connect it via ethernet to the home node. Or they could put a Nanostation M2 pointed out of their window and extend the signal further out into the street or to nearby neighbours. Each extender node extends all three networks (explained in the next section).&lt;br /&gt;
&lt;br /&gt;
For home nodes we are currently supporting these off-the-shelf hardware [https://sudoroom.org/wiki/Mesh/WalkThrough#Download.2FBuild models]. We are not planning to support anything else for the time being, though if you have a good reason please let us know. For extender nodes we are currently supporting the Ubiquiti M series [https://sudoroom.org/wiki/Mesh/Flashing_extender_nodes#Flash_the_Extender_Node routers].&lt;br /&gt;
&lt;br /&gt;
The mesh is made up mostly of wifi routers using Atheros chipsets and running [https://github.com/sudomesh/sudowrt-firmware our own firmware] based on [http://openwrt.org/ OpenWRT], [http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ Babel] and wlan slovenja's [https://github.com/sudomesh/tunneldigger tunneldigger]. &lt;br /&gt;
&lt;br /&gt;
Node-owners can choose to connect the nodes to their existing internet connection using ethernet. If they have Internet access, they can share a portion of it with the mesh. The amount of bandwidth shared is limited with 'tc'. It is chosen at node-configuration time and can be changed using the simple built-in web admin interface.&lt;br /&gt;
&lt;br /&gt;
== The three wifi networks and IP assignment ==&lt;br /&gt;
&lt;br /&gt;
The nodes each run three wifi networks (three SSIDs on the same physical wifi interfaces):&lt;br /&gt;
&lt;br /&gt;
* The Open network with SSID peoplesopen.net is an open access point. Most people will use the network by connecting to this.&lt;br /&gt;
* The Mesh network with SSID pplsopen.net-node2node is an ad-hoc network that the nodes use to mesh with each other using the Babel mesh protocol.&lt;br /&gt;
* A private wifi network SSID that is named by the node owner (or a name is generated by makenode) and uses WPA2-PSK.&lt;br /&gt;
&lt;br /&gt;
All three of these networks are available on both 2.4 and 5 GHz on the home node. They are also all three available on any extender nodes plugged in to the home node. The three different networks are extended over a single ethernet cable using VLANs.&lt;br /&gt;
&lt;br /&gt;
If a node-owner is sharing internet, then the node will create a layer 2 (L2TP) tunnel to a VPN server on the Internet using tunneldigger. Babel (the mesh routing protocol) will connect over this tunnel to other nodes on the mesh, so the mesh can route traffic over the internet if no wifi path to another node is available (e.g. other nodes are physically too far away). When people connect to the peoplesopen.net access point and try to access the Internet, the traffic will flow through the VPuN, and the source IP of requests will appear to be the VPuN with the sudo mesh organization listed as the abuse contact. &lt;br /&gt;
&lt;br /&gt;
The nodes run DHCP servers and each have a /24 IPv4 subnet in the 100.64.0.0/10 range that is statically assigned by coordination between mesh groups and individuals hosting and administrating their own nodes on People's Open Network (currently only the sudo mesh organization).&lt;br /&gt;
&lt;br /&gt;
The private network does not limit bandwidth and provides access to both direct access to the Internet (if the node owner has hooked the node up to the Internet) and access to the mesh. Each node's private network runs on 172.30.0.0/16 and uses NAT between the private network and the mesh. It does not accept any new incoming connections from the mesh onto the 172.30.0.0/16 subnet.&lt;br /&gt;
&lt;br /&gt;
== Accessing Home Node via SSH ==&lt;br /&gt;
&lt;br /&gt;
Your home node is accessible via the [https://wiki.openwrt.org/doc/uci/dropbear Dropbear] Secure Shell (SSH) server on port 22.&lt;br /&gt;
&lt;br /&gt;
The 4 Ethernet ports that are provided with your router should be configured as follows:&lt;br /&gt;
&lt;br /&gt;
# Private network with DHCP of 172.30.0.x network addresses&lt;br /&gt;
# Public network with DHCP of 100.64.x.x network addresses (SudoMesh network)&lt;br /&gt;
# NotDHCP for Extender 1&lt;br /&gt;
# NotDHCP for Extender 2&lt;br /&gt;
&lt;br /&gt;
This may not apply to your router. For instance, the TP-Link N750 uses the opposite port assignment, with port 3 for private network, and port 4 for public SudoMesh/PeoplesOpen.net network.&lt;br /&gt;
&lt;br /&gt;
=== Network Settings ===&lt;br /&gt;
&lt;br /&gt;
=== Default Build Configuration ===&lt;br /&gt;
&lt;br /&gt;
The IP address of your home node is &amp;lt;tt&amp;gt;172.22.0.1&amp;lt;/tt&amp;gt; prior to configuration via the [https://github.com/sudomesh/makenode makenode] utility. You can SSH into the node as &amp;lt;tt&amp;gt;root&amp;lt;/tt&amp;gt; using the password 'meshtheplanet' after setting up your computer to use an IP on the 172.22.0.0/16 network.&lt;br /&gt;
&lt;br /&gt;
=== Post Makenode Configuration ===&lt;br /&gt;
&lt;br /&gt;
The private network configuration uses a 172.30.0.0/16 network with DHCP available for connected clients. You can configure your workstation to use the following manual network configuration so that you can SSH into your home node. &lt;br /&gt;
&lt;br /&gt;
* IP Address: 172.30.0.9 (or anything other than 172.30.0.1)&lt;br /&gt;
* Netmask: 255.255.255.0&lt;br /&gt;
* Gateway: 172.30.0.1&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
The IP of your home node on the private network is &amp;lt;tt&amp;gt;172.30.0.1&amp;lt;/tt&amp;gt;, with the root password you specified when running &amp;lt;tt&amp;gt;makenode&amp;lt;/tt&amp;gt; to configure it.&lt;br /&gt;
&lt;br /&gt;
  ssh root@172.30.0.1&lt;br /&gt;
  The authenticity of host '172.30.0.1 (172.30.0.1)' can't be established.&lt;br /&gt;
  RSA key fingerprint is b8:9d:4a:2f:1b:f5:e1:ae:b8:19:5b:70:92:8b:7f:34.&lt;br /&gt;
  Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&lt;br /&gt;
After accepting the key by entering 'yes' and pressing ENTER, it will ask you for the root password. &lt;br /&gt;
&lt;br /&gt;
=== SSH Keys ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to add your ssh key to the router (instead of using a root password), add it to the &amp;lt;tt&amp;gt;configs/authorized_keys&amp;lt;/tt&amp;gt; file. You'll see that there are 3 other keys there for our developers. You can remove them if you'd like, but they're currently the only way we can provide remote support. During the alpha test phase we ask that you consider whether you are able to do diagnostics/debugging yourself before you remove them.&lt;br /&gt;
&lt;br /&gt;
== Node flashing and configuration ==&lt;br /&gt;
&lt;br /&gt;
One of our medium-term goals is to be able to sell nodes on our website and minimize the amount of work required to re-flash/configure the nodes and provide documentation for the user. To facilitate this, our current process for new nodes is:&lt;br /&gt;
&lt;br /&gt;
* A new node is flashed manually with the [https://github.com/sudomesh/sudowrt-firmware sudowrt] firmware.&lt;br /&gt;
* The node is then configured by a sudo mesh volunteer using our [https://github.com/sudomesh/makenode makenode] software.&lt;br /&gt;
* Makenode generates SSH keys, a SSH root password, a web admin password and a private wifi password. Then it configures the node, saves the info in the [https://github.com/sudomesh/node-database node database] and shuts down the node.&lt;br /&gt;
* Makenode then automatically [https://github.com/sudomesh/ql570 prints a sticker] containing some basic info including wifi and web admin passwords.&lt;br /&gt;
* The sudo mesh volunteer attaches the sticker to the nodes power supply and puts the node back in the box with a set of instructions for how to install and use the node.&lt;br /&gt;
* The node is shipped to the new node owner!&lt;br /&gt;
&lt;br /&gt;
== Node management ==&lt;br /&gt;
&lt;br /&gt;
All nodes set up by sudo mesh automatically allow root access using an SSH key held by a few trusted sudo mesh organizers. This is to allow us to update the firmware and troubleshoot network issues. We inform node-owners of this fact and tell them how to prevent sudo mesh from accessing their nodes, but also indicate that they should be ready to manage their own node if they choose to do this.&lt;br /&gt;
&lt;br /&gt;
== Node Monitoring ==&lt;br /&gt;
&lt;br /&gt;
Currently, the peoples open network can be monitored in real time with an [https://peoplesopen.herokuapp.com heroku app]&lt;br /&gt;
Our exit nodes communicate to this URL using a monitor.sh script. This relays information about the number of active routes and number of active gateways. If the exit node doesn't check-in for longer than 2 minutes, it is assumed to be down.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Detailed Documentation==&lt;br /&gt;
*[[Mesh/Tracking]] - Problems and solutions related to tracking, logging and anonymity&lt;br /&gt;
*[[Mesh/WalkThrough]] - Easy how-to for setting up OpenWRT&lt;br /&gt;
**[[Mesh/Flashing Extender Antennas]] - How-to for Ubiquiti routers&lt;br /&gt;
**[[Mesh/OpenWRT]] - Experiences with the OpenWRT router firmware&lt;br /&gt;
*[[Mesh/Firmware]] - Everything related to our firmware&lt;br /&gt;
**[[Mesh/Firmware/Overview]] - High level view&lt;br /&gt;
**[[Mesh/Firmware/Flash]] - How to install the sudowrt firmware based on openwrt with supported hardware&lt;br /&gt;
**[[Mesh/Firmware/Splash page]] - Splash page / Captive Portal&lt;br /&gt;
**[[Mesh/Firmware/Bandwidth shaping]] - QoS / Bandwidth shaping&lt;br /&gt;
**[[Mesh/Firmware/Zeroconf]] - Issues related to mDNS and DNS-SD&lt;br /&gt;
**[[Mesh/Firmware/MTU_issues]] - MTU issues&lt;br /&gt;
**[[Mesh/Firmware/Web Admin Development]] - Web admin development&lt;br /&gt;
*[[Mesh/Network topology]] - High-level explanation of the mesh network structure&lt;br /&gt;
*[[Mesh/Specs]] - Specs sheet on different access points&lt;br /&gt;
*[[Mesh/Frequencies]] - Information on different frequencies.&lt;br /&gt;
*[[Mesh/Software tools]] - List of useful mesh troubleshooting tools&lt;br /&gt;
*[[Mesh/Terms]] - Hidden Node, Fresnal zone, and other jargons&lt;br /&gt;
*[[Mesh/Power]] - Stuff about power usage, batteries and solar power.&lt;br /&gt;
*[[Mesh/Monitoring]] - notes about how to monitor systems&lt;br /&gt;
*[[Mesh/Spectrum]] - Different forms of spectral analysis&lt;br /&gt;
*[[Mesh/Hardware support]] - Officially and unofficially supported hardware / routers&lt;br /&gt;
*[[Mesh/Relay setup]] - Setting up a relay node&lt;br /&gt;
*[[Mesh/Exit setup]] - Setting up an exit node&lt;br /&gt;
*[[Mesh/Spectrum mapping]] - The setup we use for mapping local spectrum and wifi usage &lt;br /&gt;
**[[Mesh/Spectrum mapping/XO-1 Laptop]] - How to configure an XO-1 laptop for use with our spectrum mapping setup&lt;br /&gt;
* [[Mesh/Install]] - physical installation notes/stories&lt;br /&gt;
* [[Mesh/Diagrams]] - technical diagrams to support new outreach materials&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11279</id>
		<title>Mesh/Technical Overview</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11279"/>
		<updated>2018-06-17T04:15:28Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Home and extender nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Stale]]&lt;br /&gt;
'''This page has been marked as [[:Category:Stale|stale]], as it is outdated to the point of providing significant misinformation. Please update it before linking other pages here.'''&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
== Home and extender nodes ==&lt;br /&gt;
&lt;br /&gt;
''Note: You can also read the [[home node|non-technical explanation of home nodes and extender nodes]].''&lt;br /&gt;
&lt;br /&gt;
Our mesh has two types of nodes: Home nodes and extender nodes.&lt;br /&gt;
&lt;br /&gt;
The home node is a 5 ethernet port wifi router that runs the full sudowrt firmware. A network of home nodes can make a mesh network if they are within the same proximity e.g 200 meters and line-of-sight of each other. Beyond the home nodes broadcast area, an extender node needs to be connected to a home node to broadcast to distant neighbours. An extender node runs a minimal firmware and does nothing on its own, but if its connected to a home node it will serve as an extra radio and extend the reach of the network.&lt;br /&gt;
&lt;br /&gt;
The node operator can choose to put a home node in their living room and if they decide they want a high speed directional link to a neighbour then they can put e.g. a Nanobridge M5 running the extender node firmware on their roof and connect it via ethernet to the home node. Or they could put a Nanostation M2 pointed out of their window and extend the signal further out into the street or to nearby neighbours. Each extender node extends all three networks (explained in the next section).&lt;br /&gt;
&lt;br /&gt;
For home nodes we are currently supporting the following [https://sudoroom.org/wiki/Mesh/WalkThrough#Download.2FBuild hardware]. We are not planning to support anything else for the time being, though if you have a good reason please let us know. For extender nodes we are currently supporting the Ubiquiti M series [https://sudoroom.org/wiki/Mesh/Flashing_extender_nodes#Flash_the_Extender_Node routers].&lt;br /&gt;
&lt;br /&gt;
The mesh is made up mostly of wifi routers using Atheros chipsets and running [https://github.com/sudomesh/sudowrt-firmware our own firmware] based on [http://openwrt.org/ OpenWRT], [http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ Babel] and wlan slovenja's [https://github.com/sudomesh/tunneldigger tunneldigger]. &lt;br /&gt;
&lt;br /&gt;
Node-owners can choose to connect the nodes to their existing internet connection using ethernet. If they have Internet access, they can share a portion of it with the mesh. The amount of bandwidth shared is limited with 'tc'. It is chosen at node-configuration time and can be changed using the simple built-in web admin interface.&lt;br /&gt;
&lt;br /&gt;
== The three wifi networks and IP assignment ==&lt;br /&gt;
&lt;br /&gt;
The nodes each run three wifi networks (three SSIDs on the same physical wifi interfaces):&lt;br /&gt;
&lt;br /&gt;
* The Open network with SSID peoplesopen.net is an open access point. Most people will use the network by connecting to this.&lt;br /&gt;
* The Mesh network with SSID pplsopen.net-node2node is an ad-hoc network that the nodes use to mesh with each other using the Babel mesh protocol.&lt;br /&gt;
* A private wifi network SSID that is named by the node owner (or a name is generated by makenode) and uses WPA2-PSK.&lt;br /&gt;
&lt;br /&gt;
All three of these networks are available on both 2.4 and 5 GHz on the home node. They are also all three available on any extender nodes plugged in to the home node. The three different networks are extended over a single ethernet cable using VLANs.&lt;br /&gt;
&lt;br /&gt;
If a node-owner is sharing internet, then the node will create a layer 2 (L2TP) tunnel to a VPN server on the Internet using tunneldigger. Babel (the mesh routing protocol) will connect over this tunnel to other nodes on the mesh, so the mesh can route traffic over the internet if no wifi path to another node is available (e.g. other nodes are physically too far away). When people connect to the peoplesopen.net access point and try to access the Internet, the traffic will flow through the VPuN, and the source IP of requests will appear to be the VPuN with the sudo mesh organization listed as the abuse contact. &lt;br /&gt;
&lt;br /&gt;
The nodes run DHCP servers and each have a /24 IPv4 subnet in the 100.64.0.0/10 range that is statically assigned by coordination between mesh groups and individuals hosting and administrating their own nodes on People's Open Network (currently only the sudo mesh organization).&lt;br /&gt;
&lt;br /&gt;
The private network does not limit bandwidth and provides access to both direct access to the Internet (if the node owner has hooked the node up to the Internet) and access to the mesh. Each node's private network runs on 172.30.0.0/16 and uses NAT between the private network and the mesh. It does not accept any new incoming connections from the mesh onto the 172.30.0.0/16 subnet.&lt;br /&gt;
&lt;br /&gt;
== Accessing Home Node via SSH ==&lt;br /&gt;
&lt;br /&gt;
Your home node is accessible via the [https://wiki.openwrt.org/doc/uci/dropbear Dropbear] Secure Shell (SSH) server on port 22.&lt;br /&gt;
&lt;br /&gt;
The 4 Ethernet ports that are provided with your router should be configured as follows:&lt;br /&gt;
&lt;br /&gt;
# Private network with DHCP of 172.30.0.x network addresses&lt;br /&gt;
# Public network with DHCP of 100.64.x.x network addresses (SudoMesh network)&lt;br /&gt;
# NotDHCP for Extender 1&lt;br /&gt;
# NotDHCP for Extender 2&lt;br /&gt;
&lt;br /&gt;
This may not apply to your router. For instance, the TP-Link N750 uses the opposite port assignment, with port 3 for private network, and port 4 for public SudoMesh/PeoplesOpen.net network.&lt;br /&gt;
&lt;br /&gt;
=== Network Settings ===&lt;br /&gt;
&lt;br /&gt;
=== Default Build Configuration ===&lt;br /&gt;
&lt;br /&gt;
The IP address of your home node is &amp;lt;tt&amp;gt;172.22.0.1&amp;lt;/tt&amp;gt; prior to configuration via the [https://github.com/sudomesh/makenode makenode] utility. You can SSH into the node as &amp;lt;tt&amp;gt;root&amp;lt;/tt&amp;gt; using the password 'meshtheplanet' after setting up your computer to use an IP on the 172.22.0.0/16 network.&lt;br /&gt;
&lt;br /&gt;
=== Post Makenode Configuration ===&lt;br /&gt;
&lt;br /&gt;
The private network configuration uses a 172.30.0.0/16 network with DHCP available for connected clients. You can configure your workstation to use the following manual network configuration so that you can SSH into your home node. &lt;br /&gt;
&lt;br /&gt;
* IP Address: 172.30.0.9 (or anything other than 172.30.0.1)&lt;br /&gt;
* Netmask: 255.255.255.0&lt;br /&gt;
* Gateway: 172.30.0.1&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
The IP of your home node on the private network is &amp;lt;tt&amp;gt;172.30.0.1&amp;lt;/tt&amp;gt;, with the root password you specified when running &amp;lt;tt&amp;gt;makenode&amp;lt;/tt&amp;gt; to configure it.&lt;br /&gt;
&lt;br /&gt;
  ssh root@172.30.0.1&lt;br /&gt;
  The authenticity of host '172.30.0.1 (172.30.0.1)' can't be established.&lt;br /&gt;
  RSA key fingerprint is b8:9d:4a:2f:1b:f5:e1:ae:b8:19:5b:70:92:8b:7f:34.&lt;br /&gt;
  Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&lt;br /&gt;
After accepting the key by entering 'yes' and pressing ENTER, it will ask you for the root password. &lt;br /&gt;
&lt;br /&gt;
=== SSH Keys ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to add your ssh key to the router (instead of using a root password), add it to the &amp;lt;tt&amp;gt;configs/authorized_keys&amp;lt;/tt&amp;gt; file. You'll see that there are 3 other keys there for our developers. You can remove them if you'd like, but they're currently the only way we can provide remote support. During the alpha test phase we ask that you consider whether you are able to do diagnostics/debugging yourself before you remove them.&lt;br /&gt;
&lt;br /&gt;
== Node flashing and configuration ==&lt;br /&gt;
&lt;br /&gt;
One of our medium-term goals is to be able to sell nodes on our website and minimize the amount of work required to re-flash/configure the nodes and provide documentation for the user. To facilitate this, our current process for new nodes is:&lt;br /&gt;
&lt;br /&gt;
* A new node is flashed manually with the [https://github.com/sudomesh/sudowrt-firmware sudowrt] firmware.&lt;br /&gt;
* The node is then configured by a sudo mesh volunteer using our [https://github.com/sudomesh/makenode makenode] software.&lt;br /&gt;
* Makenode generates SSH keys, a SSH root password, a web admin password and a private wifi password. Then it configures the node, saves the info in the [https://github.com/sudomesh/node-database node database] and shuts down the node.&lt;br /&gt;
* Makenode then automatically [https://github.com/sudomesh/ql570 prints a sticker] containing some basic info including wifi and web admin passwords.&lt;br /&gt;
* The sudo mesh volunteer attaches the sticker to the nodes power supply and puts the node back in the box with a set of instructions for how to install and use the node.&lt;br /&gt;
* The node is shipped to the new node owner!&lt;br /&gt;
&lt;br /&gt;
== Node management ==&lt;br /&gt;
&lt;br /&gt;
All nodes set up by sudo mesh automatically allow root access using an SSH key held by a few trusted sudo mesh organizers. This is to allow us to update the firmware and troubleshoot network issues. We inform node-owners of this fact and tell them how to prevent sudo mesh from accessing their nodes, but also indicate that they should be ready to manage their own node if they choose to do this.&lt;br /&gt;
&lt;br /&gt;
== Node Monitoring ==&lt;br /&gt;
&lt;br /&gt;
Currently, the peoples open network can be monitored in real time with an [https://peoplesopen.herokuapp.com heroku app]&lt;br /&gt;
Our exit nodes communicate to this URL using a monitor.sh script. This relays information about the number of active routes and number of active gateways. If the exit node doesn't check-in for longer than 2 minutes, it is assumed to be down.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Detailed Documentation==&lt;br /&gt;
*[[Mesh/Tracking]] - Problems and solutions related to tracking, logging and anonymity&lt;br /&gt;
*[[Mesh/WalkThrough]] - Easy how-to for setting up OpenWRT&lt;br /&gt;
**[[Mesh/Flashing Extender Antennas]] - How-to for Ubiquiti routers&lt;br /&gt;
**[[Mesh/OpenWRT]] - Experiences with the OpenWRT router firmware&lt;br /&gt;
*[[Mesh/Firmware]] - Everything related to our firmware&lt;br /&gt;
**[[Mesh/Firmware/Overview]] - High level view&lt;br /&gt;
**[[Mesh/Firmware/Flash]] - How to install the sudowrt firmware based on openwrt with supported hardware&lt;br /&gt;
**[[Mesh/Firmware/Splash page]] - Splash page / Captive Portal&lt;br /&gt;
**[[Mesh/Firmware/Bandwidth shaping]] - QoS / Bandwidth shaping&lt;br /&gt;
**[[Mesh/Firmware/Zeroconf]] - Issues related to mDNS and DNS-SD&lt;br /&gt;
**[[Mesh/Firmware/MTU_issues]] - MTU issues&lt;br /&gt;
**[[Mesh/Firmware/Web Admin Development]] - Web admin development&lt;br /&gt;
*[[Mesh/Network topology]] - High-level explanation of the mesh network structure&lt;br /&gt;
*[[Mesh/Specs]] - Specs sheet on different access points&lt;br /&gt;
*[[Mesh/Frequencies]] - Information on different frequencies.&lt;br /&gt;
*[[Mesh/Software tools]] - List of useful mesh troubleshooting tools&lt;br /&gt;
*[[Mesh/Terms]] - Hidden Node, Fresnal zone, and other jargons&lt;br /&gt;
*[[Mesh/Power]] - Stuff about power usage, batteries and solar power.&lt;br /&gt;
*[[Mesh/Monitoring]] - notes about how to monitor systems&lt;br /&gt;
*[[Mesh/Spectrum]] - Different forms of spectral analysis&lt;br /&gt;
*[[Mesh/Hardware support]] - Officially and unofficially supported hardware / routers&lt;br /&gt;
*[[Mesh/Relay setup]] - Setting up a relay node&lt;br /&gt;
*[[Mesh/Exit setup]] - Setting up an exit node&lt;br /&gt;
*[[Mesh/Spectrum mapping]] - The setup we use for mapping local spectrum and wifi usage &lt;br /&gt;
**[[Mesh/Spectrum mapping/XO-1 Laptop]] - How to configure an XO-1 laptop for use with our spectrum mapping setup&lt;br /&gt;
* [[Mesh/Install]] - physical installation notes/stories&lt;br /&gt;
* [[Mesh/Diagrams]] - technical diagrams to support new outreach materials&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11278</id>
		<title>Mesh/Technical Overview</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11278"/>
		<updated>2018-06-17T04:14:33Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Home and extender nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Stale]]&lt;br /&gt;
'''This page has been marked as [[:Category:Stale|stale]], as it is outdated to the point of providing significant misinformation. Please update it before linking other pages here.'''&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
== Home and extender nodes ==&lt;br /&gt;
&lt;br /&gt;
''Note: You can also read the [[home node|non-technical explanation of home nodes and extender nodes]].''&lt;br /&gt;
&lt;br /&gt;
Our mesh has two types of nodes: Home nodes and extender nodes.&lt;br /&gt;
&lt;br /&gt;
The home node is a 5 ethernet port wifi router that runs the full sudowrt firmware. A network of home nodes can make a mesh network if they are within the same proximity e.g 200 meters and line-of-sight of each other. Beyond the home nodes broadcast area, an extender node needs to be connected to a home node to broadcast to distant neighbours. An extender node runs a minimal firmware and does nothing on its own, but if its connected to a home node it will serve as an extra radio and extend the reach of the network.&lt;br /&gt;
&lt;br /&gt;
The node operator can choose to put a home node in e.g. their living room and if they decide they want a high speed directional link to a neighbour then they can put e.g. a Nanobridge M5 running the extender node firmware on their roof and connect it via ethernet to the home node. Or they could put a Nanostation M2 pointed out of their window and extend the signal further out into the street or to nearby neighbours. Each extender node extends all three networks (explained in the next section).&lt;br /&gt;
&lt;br /&gt;
For home nodes we are currently supporting the following [https://sudoroom.org/wiki/Mesh/WalkThrough#Download.2FBuild hardware]. We are not planning to support anything else for the time being, though if you have a good reason please let us know. For extender nodes we are currently supporting the Ubiquiti M series [https://sudoroom.org/wiki/Mesh/Flashing_extender_nodes#Flash_the_Extender_Node routers].&lt;br /&gt;
&lt;br /&gt;
The mesh is made up mostly of wifi routers using Atheros chipsets and running [https://github.com/sudomesh/sudowrt-firmware our own firmware] based on [http://openwrt.org/ OpenWRT], [http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ Babel] and wlan slovenja's [https://github.com/sudomesh/tunneldigger tunneldigger]. &lt;br /&gt;
&lt;br /&gt;
Node-owners can choose to connect the nodes to their existing internet connection using ethernet. If they have Internet access, they can share a portion of it with the mesh. The amount of bandwidth shared is limited with 'tc'. It is chosen at node-configuration time and can be changed using the simple built-in web admin interface.&lt;br /&gt;
&lt;br /&gt;
== The three wifi networks and IP assignment ==&lt;br /&gt;
&lt;br /&gt;
The nodes each run three wifi networks (three SSIDs on the same physical wifi interfaces):&lt;br /&gt;
&lt;br /&gt;
* The Open network with SSID peoplesopen.net is an open access point. Most people will use the network by connecting to this.&lt;br /&gt;
* The Mesh network with SSID pplsopen.net-node2node is an ad-hoc network that the nodes use to mesh with each other using the Babel mesh protocol.&lt;br /&gt;
* A private wifi network SSID that is named by the node owner (or a name is generated by makenode) and uses WPA2-PSK.&lt;br /&gt;
&lt;br /&gt;
All three of these networks are available on both 2.4 and 5 GHz on the home node. They are also all three available on any extender nodes plugged in to the home node. The three different networks are extended over a single ethernet cable using VLANs.&lt;br /&gt;
&lt;br /&gt;
If a node-owner is sharing internet, then the node will create a layer 2 (L2TP) tunnel to a VPN server on the Internet using tunneldigger. Babel (the mesh routing protocol) will connect over this tunnel to other nodes on the mesh, so the mesh can route traffic over the internet if no wifi path to another node is available (e.g. other nodes are physically too far away). When people connect to the peoplesopen.net access point and try to access the Internet, the traffic will flow through the VPuN, and the source IP of requests will appear to be the VPuN with the sudo mesh organization listed as the abuse contact. &lt;br /&gt;
&lt;br /&gt;
The nodes run DHCP servers and each have a /24 IPv4 subnet in the 100.64.0.0/10 range that is statically assigned by coordination between mesh groups and individuals hosting and administrating their own nodes on People's Open Network (currently only the sudo mesh organization).&lt;br /&gt;
&lt;br /&gt;
The private network does not limit bandwidth and provides access to both direct access to the Internet (if the node owner has hooked the node up to the Internet) and access to the mesh. Each node's private network runs on 172.30.0.0/16 and uses NAT between the private network and the mesh. It does not accept any new incoming connections from the mesh onto the 172.30.0.0/16 subnet.&lt;br /&gt;
&lt;br /&gt;
== Accessing Home Node via SSH ==&lt;br /&gt;
&lt;br /&gt;
Your home node is accessible via the [https://wiki.openwrt.org/doc/uci/dropbear Dropbear] Secure Shell (SSH) server on port 22.&lt;br /&gt;
&lt;br /&gt;
The 4 Ethernet ports that are provided with your router should be configured as follows:&lt;br /&gt;
&lt;br /&gt;
# Private network with DHCP of 172.30.0.x network addresses&lt;br /&gt;
# Public network with DHCP of 100.64.x.x network addresses (SudoMesh network)&lt;br /&gt;
# NotDHCP for Extender 1&lt;br /&gt;
# NotDHCP for Extender 2&lt;br /&gt;
&lt;br /&gt;
This may not apply to your router. For instance, the TP-Link N750 uses the opposite port assignment, with port 3 for private network, and port 4 for public SudoMesh/PeoplesOpen.net network.&lt;br /&gt;
&lt;br /&gt;
=== Network Settings ===&lt;br /&gt;
&lt;br /&gt;
=== Default Build Configuration ===&lt;br /&gt;
&lt;br /&gt;
The IP address of your home node is &amp;lt;tt&amp;gt;172.22.0.1&amp;lt;/tt&amp;gt; prior to configuration via the [https://github.com/sudomesh/makenode makenode] utility. You can SSH into the node as &amp;lt;tt&amp;gt;root&amp;lt;/tt&amp;gt; using the password 'meshtheplanet' after setting up your computer to use an IP on the 172.22.0.0/16 network.&lt;br /&gt;
&lt;br /&gt;
=== Post Makenode Configuration ===&lt;br /&gt;
&lt;br /&gt;
The private network configuration uses a 172.30.0.0/16 network with DHCP available for connected clients. You can configure your workstation to use the following manual network configuration so that you can SSH into your home node. &lt;br /&gt;
&lt;br /&gt;
* IP Address: 172.30.0.9 (or anything other than 172.30.0.1)&lt;br /&gt;
* Netmask: 255.255.255.0&lt;br /&gt;
* Gateway: 172.30.0.1&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
The IP of your home node on the private network is &amp;lt;tt&amp;gt;172.30.0.1&amp;lt;/tt&amp;gt;, with the root password you specified when running &amp;lt;tt&amp;gt;makenode&amp;lt;/tt&amp;gt; to configure it.&lt;br /&gt;
&lt;br /&gt;
  ssh root@172.30.0.1&lt;br /&gt;
  The authenticity of host '172.30.0.1 (172.30.0.1)' can't be established.&lt;br /&gt;
  RSA key fingerprint is b8:9d:4a:2f:1b:f5:e1:ae:b8:19:5b:70:92:8b:7f:34.&lt;br /&gt;
  Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&lt;br /&gt;
After accepting the key by entering 'yes' and pressing ENTER, it will ask you for the root password. &lt;br /&gt;
&lt;br /&gt;
=== SSH Keys ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to add your ssh key to the router (instead of using a root password), add it to the &amp;lt;tt&amp;gt;configs/authorized_keys&amp;lt;/tt&amp;gt; file. You'll see that there are 3 other keys there for our developers. You can remove them if you'd like, but they're currently the only way we can provide remote support. During the alpha test phase we ask that you consider whether you are able to do diagnostics/debugging yourself before you remove them.&lt;br /&gt;
&lt;br /&gt;
== Node flashing and configuration ==&lt;br /&gt;
&lt;br /&gt;
One of our medium-term goals is to be able to sell nodes on our website and minimize the amount of work required to re-flash/configure the nodes and provide documentation for the user. To facilitate this, our current process for new nodes is:&lt;br /&gt;
&lt;br /&gt;
* A new node is flashed manually with the [https://github.com/sudomesh/sudowrt-firmware sudowrt] firmware.&lt;br /&gt;
* The node is then configured by a sudo mesh volunteer using our [https://github.com/sudomesh/makenode makenode] software.&lt;br /&gt;
* Makenode generates SSH keys, a SSH root password, a web admin password and a private wifi password. Then it configures the node, saves the info in the [https://github.com/sudomesh/node-database node database] and shuts down the node.&lt;br /&gt;
* Makenode then automatically [https://github.com/sudomesh/ql570 prints a sticker] containing some basic info including wifi and web admin passwords.&lt;br /&gt;
* The sudo mesh volunteer attaches the sticker to the nodes power supply and puts the node back in the box with a set of instructions for how to install and use the node.&lt;br /&gt;
* The node is shipped to the new node owner!&lt;br /&gt;
&lt;br /&gt;
== Node management ==&lt;br /&gt;
&lt;br /&gt;
All nodes set up by sudo mesh automatically allow root access using an SSH key held by a few trusted sudo mesh organizers. This is to allow us to update the firmware and troubleshoot network issues. We inform node-owners of this fact and tell them how to prevent sudo mesh from accessing their nodes, but also indicate that they should be ready to manage their own node if they choose to do this.&lt;br /&gt;
&lt;br /&gt;
== Node Monitoring ==&lt;br /&gt;
&lt;br /&gt;
Currently, the peoples open network can be monitored in real time with an [https://peoplesopen.herokuapp.com heroku app]&lt;br /&gt;
Our exit nodes communicate to this URL using a monitor.sh script. This relays information about the number of active routes and number of active gateways. If the exit node doesn't check-in for longer than 2 minutes, it is assumed to be down.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Detailed Documentation==&lt;br /&gt;
*[[Mesh/Tracking]] - Problems and solutions related to tracking, logging and anonymity&lt;br /&gt;
*[[Mesh/WalkThrough]] - Easy how-to for setting up OpenWRT&lt;br /&gt;
**[[Mesh/Flashing Extender Antennas]] - How-to for Ubiquiti routers&lt;br /&gt;
**[[Mesh/OpenWRT]] - Experiences with the OpenWRT router firmware&lt;br /&gt;
*[[Mesh/Firmware]] - Everything related to our firmware&lt;br /&gt;
**[[Mesh/Firmware/Overview]] - High level view&lt;br /&gt;
**[[Mesh/Firmware/Flash]] - How to install the sudowrt firmware based on openwrt with supported hardware&lt;br /&gt;
**[[Mesh/Firmware/Splash page]] - Splash page / Captive Portal&lt;br /&gt;
**[[Mesh/Firmware/Bandwidth shaping]] - QoS / Bandwidth shaping&lt;br /&gt;
**[[Mesh/Firmware/Zeroconf]] - Issues related to mDNS and DNS-SD&lt;br /&gt;
**[[Mesh/Firmware/MTU_issues]] - MTU issues&lt;br /&gt;
**[[Mesh/Firmware/Web Admin Development]] - Web admin development&lt;br /&gt;
*[[Mesh/Network topology]] - High-level explanation of the mesh network structure&lt;br /&gt;
*[[Mesh/Specs]] - Specs sheet on different access points&lt;br /&gt;
*[[Mesh/Frequencies]] - Information on different frequencies.&lt;br /&gt;
*[[Mesh/Software tools]] - List of useful mesh troubleshooting tools&lt;br /&gt;
*[[Mesh/Terms]] - Hidden Node, Fresnal zone, and other jargons&lt;br /&gt;
*[[Mesh/Power]] - Stuff about power usage, batteries and solar power.&lt;br /&gt;
*[[Mesh/Monitoring]] - notes about how to monitor systems&lt;br /&gt;
*[[Mesh/Spectrum]] - Different forms of spectral analysis&lt;br /&gt;
*[[Mesh/Hardware support]] - Officially and unofficially supported hardware / routers&lt;br /&gt;
*[[Mesh/Relay setup]] - Setting up a relay node&lt;br /&gt;
*[[Mesh/Exit setup]] - Setting up an exit node&lt;br /&gt;
*[[Mesh/Spectrum mapping]] - The setup we use for mapping local spectrum and wifi usage &lt;br /&gt;
**[[Mesh/Spectrum mapping/XO-1 Laptop]] - How to configure an XO-1 laptop for use with our spectrum mapping setup&lt;br /&gt;
* [[Mesh/Install]] - physical installation notes/stories&lt;br /&gt;
* [[Mesh/Diagrams]] - technical diagrams to support new outreach materials&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11277</id>
		<title>Mesh/Technical Overview</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11277"/>
		<updated>2018-06-17T04:14:08Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Home and extender nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Stale]]&lt;br /&gt;
'''This page has been marked as [[:Category:Stale|stale]], as it is outdated to the point of providing significant misinformation. Please update it before linking other pages here.'''&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
== Home and extender nodes ==&lt;br /&gt;
&lt;br /&gt;
''Note: You can also read the [[home node|non-technical explanation of home nodes and extender nodes]].''&lt;br /&gt;
&lt;br /&gt;
Our mesh has two types of nodes: Home nodes and extender nodes.&lt;br /&gt;
&lt;br /&gt;
The home node is a 5 ethernet port wifi router that runs the full sudowrt firmware. A network of home nodes can make a mesh network if they are within the same proximity e.g 200 meters and line-of-sight of each other. Beyond the home nodes broadcast area, an extender node needs to be connected to a home node to broadcast to distant neighbours. An extender node runs a minimal firmware and does nothing on its own, but if its connected to a home node it will serve as an extra radio and extend the reach of the network.&lt;br /&gt;
The node operator can choose to put a home node in e.g. their living room and if they decide they want a high speed directional link to a neighbour then they can put e.g. a Nanobridge M5 running the extender node firmware on their roof and connect it via ethernet to the home node. Or they could put a Nanostation M2 pointed out of their window and extend the signal further out into the street or to nearby neighbours. Each extender node extends all three networks (explained in the next section).&lt;br /&gt;
&lt;br /&gt;
For home nodes we are currently supporting the following [https://sudoroom.org/wiki/Mesh/WalkThrough#Download.2FBuild hardware]. We are not planning to support anything else for the time being, though if you have a good reason please let us know. For extender nodes we are currently supporting the Ubiquiti M series [https://sudoroom.org/wiki/Mesh/Flashing_extender_nodes#Flash_the_Extender_Node routers].&lt;br /&gt;
&lt;br /&gt;
The mesh is made up mostly of wifi routers using Atheros chipsets and running [https://github.com/sudomesh/sudowrt-firmware our own firmware] based on [http://openwrt.org/ OpenWRT], [http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ Babel] and wlan slovenja's [https://github.com/sudomesh/tunneldigger tunneldigger]. &lt;br /&gt;
&lt;br /&gt;
Node-owners can choose to connect the nodes to their existing internet connection using ethernet. If they have Internet access, they can share a portion of it with the mesh. The amount of bandwidth shared is limited with 'tc'. It is chosen at node-configuration time and can be changed using the simple built-in web admin interface.&lt;br /&gt;
&lt;br /&gt;
== The three wifi networks and IP assignment ==&lt;br /&gt;
&lt;br /&gt;
The nodes each run three wifi networks (three SSIDs on the same physical wifi interfaces):&lt;br /&gt;
&lt;br /&gt;
* The Open network with SSID peoplesopen.net is an open access point. Most people will use the network by connecting to this.&lt;br /&gt;
* The Mesh network with SSID pplsopen.net-node2node is an ad-hoc network that the nodes use to mesh with each other using the Babel mesh protocol.&lt;br /&gt;
* A private wifi network SSID that is named by the node owner (or a name is generated by makenode) and uses WPA2-PSK.&lt;br /&gt;
&lt;br /&gt;
All three of these networks are available on both 2.4 and 5 GHz on the home node. They are also all three available on any extender nodes plugged in to the home node. The three different networks are extended over a single ethernet cable using VLANs.&lt;br /&gt;
&lt;br /&gt;
If a node-owner is sharing internet, then the node will create a layer 2 (L2TP) tunnel to a VPN server on the Internet using tunneldigger. Babel (the mesh routing protocol) will connect over this tunnel to other nodes on the mesh, so the mesh can route traffic over the internet if no wifi path to another node is available (e.g. other nodes are physically too far away). When people connect to the peoplesopen.net access point and try to access the Internet, the traffic will flow through the VPuN, and the source IP of requests will appear to be the VPuN with the sudo mesh organization listed as the abuse contact. &lt;br /&gt;
&lt;br /&gt;
The nodes run DHCP servers and each have a /24 IPv4 subnet in the 100.64.0.0/10 range that is statically assigned by coordination between mesh groups and individuals hosting and administrating their own nodes on People's Open Network (currently only the sudo mesh organization).&lt;br /&gt;
&lt;br /&gt;
The private network does not limit bandwidth and provides access to both direct access to the Internet (if the node owner has hooked the node up to the Internet) and access to the mesh. Each node's private network runs on 172.30.0.0/16 and uses NAT between the private network and the mesh. It does not accept any new incoming connections from the mesh onto the 172.30.0.0/16 subnet.&lt;br /&gt;
&lt;br /&gt;
== Accessing Home Node via SSH ==&lt;br /&gt;
&lt;br /&gt;
Your home node is accessible via the [https://wiki.openwrt.org/doc/uci/dropbear Dropbear] Secure Shell (SSH) server on port 22.&lt;br /&gt;
&lt;br /&gt;
The 4 Ethernet ports that are provided with your router should be configured as follows:&lt;br /&gt;
&lt;br /&gt;
# Private network with DHCP of 172.30.0.x network addresses&lt;br /&gt;
# Public network with DHCP of 100.64.x.x network addresses (SudoMesh network)&lt;br /&gt;
# NotDHCP for Extender 1&lt;br /&gt;
# NotDHCP for Extender 2&lt;br /&gt;
&lt;br /&gt;
This may not apply to your router. For instance, the TP-Link N750 uses the opposite port assignment, with port 3 for private network, and port 4 for public SudoMesh/PeoplesOpen.net network.&lt;br /&gt;
&lt;br /&gt;
=== Network Settings ===&lt;br /&gt;
&lt;br /&gt;
=== Default Build Configuration ===&lt;br /&gt;
&lt;br /&gt;
The IP address of your home node is &amp;lt;tt&amp;gt;172.22.0.1&amp;lt;/tt&amp;gt; prior to configuration via the [https://github.com/sudomesh/makenode makenode] utility. You can SSH into the node as &amp;lt;tt&amp;gt;root&amp;lt;/tt&amp;gt; using the password 'meshtheplanet' after setting up your computer to use an IP on the 172.22.0.0/16 network.&lt;br /&gt;
&lt;br /&gt;
=== Post Makenode Configuration ===&lt;br /&gt;
&lt;br /&gt;
The private network configuration uses a 172.30.0.0/16 network with DHCP available for connected clients. You can configure your workstation to use the following manual network configuration so that you can SSH into your home node. &lt;br /&gt;
&lt;br /&gt;
* IP Address: 172.30.0.9 (or anything other than 172.30.0.1)&lt;br /&gt;
* Netmask: 255.255.255.0&lt;br /&gt;
* Gateway: 172.30.0.1&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
The IP of your home node on the private network is &amp;lt;tt&amp;gt;172.30.0.1&amp;lt;/tt&amp;gt;, with the root password you specified when running &amp;lt;tt&amp;gt;makenode&amp;lt;/tt&amp;gt; to configure it.&lt;br /&gt;
&lt;br /&gt;
  ssh root@172.30.0.1&lt;br /&gt;
  The authenticity of host '172.30.0.1 (172.30.0.1)' can't be established.&lt;br /&gt;
  RSA key fingerprint is b8:9d:4a:2f:1b:f5:e1:ae:b8:19:5b:70:92:8b:7f:34.&lt;br /&gt;
  Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&lt;br /&gt;
After accepting the key by entering 'yes' and pressing ENTER, it will ask you for the root password. &lt;br /&gt;
&lt;br /&gt;
=== SSH Keys ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to add your ssh key to the router (instead of using a root password), add it to the &amp;lt;tt&amp;gt;configs/authorized_keys&amp;lt;/tt&amp;gt; file. You'll see that there are 3 other keys there for our developers. You can remove them if you'd like, but they're currently the only way we can provide remote support. During the alpha test phase we ask that you consider whether you are able to do diagnostics/debugging yourself before you remove them.&lt;br /&gt;
&lt;br /&gt;
== Node flashing and configuration ==&lt;br /&gt;
&lt;br /&gt;
One of our medium-term goals is to be able to sell nodes on our website and minimize the amount of work required to re-flash/configure the nodes and provide documentation for the user. To facilitate this, our current process for new nodes is:&lt;br /&gt;
&lt;br /&gt;
* A new node is flashed manually with the [https://github.com/sudomesh/sudowrt-firmware sudowrt] firmware.&lt;br /&gt;
* The node is then configured by a sudo mesh volunteer using our [https://github.com/sudomesh/makenode makenode] software.&lt;br /&gt;
* Makenode generates SSH keys, a SSH root password, a web admin password and a private wifi password. Then it configures the node, saves the info in the [https://github.com/sudomesh/node-database node database] and shuts down the node.&lt;br /&gt;
* Makenode then automatically [https://github.com/sudomesh/ql570 prints a sticker] containing some basic info including wifi and web admin passwords.&lt;br /&gt;
* The sudo mesh volunteer attaches the sticker to the nodes power supply and puts the node back in the box with a set of instructions for how to install and use the node.&lt;br /&gt;
* The node is shipped to the new node owner!&lt;br /&gt;
&lt;br /&gt;
== Node management ==&lt;br /&gt;
&lt;br /&gt;
All nodes set up by sudo mesh automatically allow root access using an SSH key held by a few trusted sudo mesh organizers. This is to allow us to update the firmware and troubleshoot network issues. We inform node-owners of this fact and tell them how to prevent sudo mesh from accessing their nodes, but also indicate that they should be ready to manage their own node if they choose to do this.&lt;br /&gt;
&lt;br /&gt;
== Node Monitoring ==&lt;br /&gt;
&lt;br /&gt;
Currently, the peoples open network can be monitored in real time with an [https://peoplesopen.herokuapp.com heroku app]&lt;br /&gt;
Our exit nodes communicate to this URL using a monitor.sh script. This relays information about the number of active routes and number of active gateways. If the exit node doesn't check-in for longer than 2 minutes, it is assumed to be down.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Detailed Documentation==&lt;br /&gt;
*[[Mesh/Tracking]] - Problems and solutions related to tracking, logging and anonymity&lt;br /&gt;
*[[Mesh/WalkThrough]] - Easy how-to for setting up OpenWRT&lt;br /&gt;
**[[Mesh/Flashing Extender Antennas]] - How-to for Ubiquiti routers&lt;br /&gt;
**[[Mesh/OpenWRT]] - Experiences with the OpenWRT router firmware&lt;br /&gt;
*[[Mesh/Firmware]] - Everything related to our firmware&lt;br /&gt;
**[[Mesh/Firmware/Overview]] - High level view&lt;br /&gt;
**[[Mesh/Firmware/Flash]] - How to install the sudowrt firmware based on openwrt with supported hardware&lt;br /&gt;
**[[Mesh/Firmware/Splash page]] - Splash page / Captive Portal&lt;br /&gt;
**[[Mesh/Firmware/Bandwidth shaping]] - QoS / Bandwidth shaping&lt;br /&gt;
**[[Mesh/Firmware/Zeroconf]] - Issues related to mDNS and DNS-SD&lt;br /&gt;
**[[Mesh/Firmware/MTU_issues]] - MTU issues&lt;br /&gt;
**[[Mesh/Firmware/Web Admin Development]] - Web admin development&lt;br /&gt;
*[[Mesh/Network topology]] - High-level explanation of the mesh network structure&lt;br /&gt;
*[[Mesh/Specs]] - Specs sheet on different access points&lt;br /&gt;
*[[Mesh/Frequencies]] - Information on different frequencies.&lt;br /&gt;
*[[Mesh/Software tools]] - List of useful mesh troubleshooting tools&lt;br /&gt;
*[[Mesh/Terms]] - Hidden Node, Fresnal zone, and other jargons&lt;br /&gt;
*[[Mesh/Power]] - Stuff about power usage, batteries and solar power.&lt;br /&gt;
*[[Mesh/Monitoring]] - notes about how to monitor systems&lt;br /&gt;
*[[Mesh/Spectrum]] - Different forms of spectral analysis&lt;br /&gt;
*[[Mesh/Hardware support]] - Officially and unofficially supported hardware / routers&lt;br /&gt;
*[[Mesh/Relay setup]] - Setting up a relay node&lt;br /&gt;
*[[Mesh/Exit setup]] - Setting up an exit node&lt;br /&gt;
*[[Mesh/Spectrum mapping]] - The setup we use for mapping local spectrum and wifi usage &lt;br /&gt;
**[[Mesh/Spectrum mapping/XO-1 Laptop]] - How to configure an XO-1 laptop for use with our spectrum mapping setup&lt;br /&gt;
* [[Mesh/Install]] - physical installation notes/stories&lt;br /&gt;
* [[Mesh/Diagrams]] - technical diagrams to support new outreach materials&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11276</id>
		<title>Mesh/Technical Overview</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11276"/>
		<updated>2018-06-17T03:51:39Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Home and extender nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Stale]]&lt;br /&gt;
'''This page has been marked as [[:Category:Stale|stale]], as it is outdated to the point of providing significant misinformation. Please update it before linking other pages here.'''&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
== Home and extender nodes ==&lt;br /&gt;
&lt;br /&gt;
''Note: You can also read the [[home node|non-technical explanation of home nodes and extender nodes]].''&lt;br /&gt;
&lt;br /&gt;
Our mesh has two types of nodes: Home nodes and extender nodes.&lt;br /&gt;
&lt;br /&gt;
The home nodes run the full sudowrt firmware and a network of only home nodes can make a functioning mesh network if they are within 200 meters and line-of-sight of each other. The home node is a normal five-ethernet-port indoor wifi router. An extender node runs a minimal firmware and does nothing on its own. Instead, the extender node basically acts as an extra radio and extends the networks reach when plugged in to a home node. &lt;br /&gt;
The node operator can choose to put a home node in e.g. their living room and if they decide they want a high speed directional link to a neighbour then they can put e.g. a Nanobridge M5 running the extender node firmware on their roof and connect it via ethernet to the home node. Or they could put a Nanostation M2 pointed out of their window and extend the signal further out into the street or to nearby neighbours. Each extender node extends all three networks (explained in the next section).&lt;br /&gt;
&lt;br /&gt;
For home nodes we are currently supporting the following [https://sudoroom.org/wiki/Mesh/WalkThrough#Download.2FBuild hardware]. We are not planning to support anything else for the time being, though if you have a good reason please let us know. For extender nodes we are currently supporting the Ubiquiti M series [https://sudoroom.org/wiki/Mesh/Flashing_extender_nodes#Flash_the_Extender_Node routers].&lt;br /&gt;
&lt;br /&gt;
The mesh is made up mostly of wifi routers using Atheros chipsets and running [https://github.com/sudomesh/sudowrt-firmware our own firmware] based on [http://openwrt.org/ OpenWRT], [http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ Babel] and wlan slovenja's [https://github.com/sudomesh/tunneldigger tunneldigger]. &lt;br /&gt;
&lt;br /&gt;
Node-owners can choose to connect the nodes to their existing internet connection using ethernet. If they have Internet access, they can share a portion of it with the mesh. The amount of bandwidth shared is limited with 'tc'. It is chosen at node-configuration time and can be changed using the simple built-in web admin interface.&lt;br /&gt;
&lt;br /&gt;
== The three wifi networks and IP assignment ==&lt;br /&gt;
&lt;br /&gt;
The nodes each run three wifi networks (three SSIDs on the same physical wifi interfaces):&lt;br /&gt;
&lt;br /&gt;
* The Open network with SSID peoplesopen.net is an open access point. Most people will use the network by connecting to this.&lt;br /&gt;
* The Mesh network with SSID pplsopen.net-node2node is an ad-hoc network that the nodes use to mesh with each other using the Babel mesh protocol.&lt;br /&gt;
* A private wifi network SSID that is named by the node owner (or a name is generated by makenode) and uses WPA2-PSK.&lt;br /&gt;
&lt;br /&gt;
All three of these networks are available on both 2.4 and 5 GHz on the home node. They are also all three available on any extender nodes plugged in to the home node. The three different networks are extended over a single ethernet cable using VLANs.&lt;br /&gt;
&lt;br /&gt;
If a node-owner is sharing internet, then the node will create a layer 2 (L2TP) tunnel to a VPN server on the Internet using tunneldigger. Babel (the mesh routing protocol) will connect over this tunnel to other nodes on the mesh, so the mesh can route traffic over the internet if no wifi path to another node is available (e.g. other nodes are physically too far away). When people connect to the peoplesopen.net access point and try to access the Internet, the traffic will flow through the VPuN, and the source IP of requests will appear to be the VPuN with the sudo mesh organization listed as the abuse contact. &lt;br /&gt;
&lt;br /&gt;
The nodes run DHCP servers and each have a /24 IPv4 subnet in the 100.64.0.0/10 range that is statically assigned by coordination between mesh groups and individuals hosting and administrating their own nodes on People's Open Network (currently only the sudo mesh organization).&lt;br /&gt;
&lt;br /&gt;
The private network does not limit bandwidth and provides access to both direct access to the Internet (if the node owner has hooked the node up to the Internet) and access to the mesh. Each node's private network runs on 172.30.0.0/16 and uses NAT between the private network and the mesh. It does not accept any new incoming connections from the mesh onto the 172.30.0.0/16 subnet.&lt;br /&gt;
&lt;br /&gt;
== Accessing Home Node via SSH ==&lt;br /&gt;
&lt;br /&gt;
Your home node is accessible via the [https://wiki.openwrt.org/doc/uci/dropbear Dropbear] Secure Shell (SSH) server on port 22.&lt;br /&gt;
&lt;br /&gt;
The 4 Ethernet ports that are provided with your router should be configured as follows:&lt;br /&gt;
&lt;br /&gt;
# Private network with DHCP of 172.30.0.x network addresses&lt;br /&gt;
# Public network with DHCP of 100.64.x.x network addresses (SudoMesh network)&lt;br /&gt;
# NotDHCP for Extender 1&lt;br /&gt;
# NotDHCP for Extender 2&lt;br /&gt;
&lt;br /&gt;
This may not apply to your router. For instance, the TP-Link N750 uses the opposite port assignment, with port 3 for private network, and port 4 for public SudoMesh/PeoplesOpen.net network.&lt;br /&gt;
&lt;br /&gt;
=== Network Settings ===&lt;br /&gt;
&lt;br /&gt;
=== Default Build Configuration ===&lt;br /&gt;
&lt;br /&gt;
The IP address of your home node is &amp;lt;tt&amp;gt;172.22.0.1&amp;lt;/tt&amp;gt; prior to configuration via the [https://github.com/sudomesh/makenode makenode] utility. You can SSH into the node as &amp;lt;tt&amp;gt;root&amp;lt;/tt&amp;gt; using the password 'meshtheplanet' after setting up your computer to use an IP on the 172.22.0.0/16 network.&lt;br /&gt;
&lt;br /&gt;
=== Post Makenode Configuration ===&lt;br /&gt;
&lt;br /&gt;
The private network configuration uses a 172.30.0.0/16 network with DHCP available for connected clients. You can configure your workstation to use the following manual network configuration so that you can SSH into your home node. &lt;br /&gt;
&lt;br /&gt;
* IP Address: 172.30.0.9 (or anything other than 172.30.0.1)&lt;br /&gt;
* Netmask: 255.255.255.0&lt;br /&gt;
* Gateway: 172.30.0.1&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
The IP of your home node on the private network is &amp;lt;tt&amp;gt;172.30.0.1&amp;lt;/tt&amp;gt;, with the root password you specified when running &amp;lt;tt&amp;gt;makenode&amp;lt;/tt&amp;gt; to configure it.&lt;br /&gt;
&lt;br /&gt;
  ssh root@172.30.0.1&lt;br /&gt;
  The authenticity of host '172.30.0.1 (172.30.0.1)' can't be established.&lt;br /&gt;
  RSA key fingerprint is b8:9d:4a:2f:1b:f5:e1:ae:b8:19:5b:70:92:8b:7f:34.&lt;br /&gt;
  Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&lt;br /&gt;
After accepting the key by entering 'yes' and pressing ENTER, it will ask you for the root password. &lt;br /&gt;
&lt;br /&gt;
=== SSH Keys ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to add your ssh key to the router (instead of using a root password), add it to the &amp;lt;tt&amp;gt;configs/authorized_keys&amp;lt;/tt&amp;gt; file. You'll see that there are 3 other keys there for our developers. You can remove them if you'd like, but they're currently the only way we can provide remote support. During the alpha test phase we ask that you consider whether you are able to do diagnostics/debugging yourself before you remove them.&lt;br /&gt;
&lt;br /&gt;
== Node flashing and configuration ==&lt;br /&gt;
&lt;br /&gt;
One of our medium-term goals is to be able to sell nodes on our website and minimize the amount of work required to re-flash/configure the nodes and provide documentation for the user. To facilitate this, our current process for new nodes is:&lt;br /&gt;
&lt;br /&gt;
* A new node is flashed manually with the [https://github.com/sudomesh/sudowrt-firmware sudowrt] firmware.&lt;br /&gt;
* The node is then configured by a sudo mesh volunteer using our [https://github.com/sudomesh/makenode makenode] software.&lt;br /&gt;
* Makenode generates SSH keys, a SSH root password, a web admin password and a private wifi password. Then it configures the node, saves the info in the [https://github.com/sudomesh/node-database node database] and shuts down the node.&lt;br /&gt;
* Makenode then automatically [https://github.com/sudomesh/ql570 prints a sticker] containing some basic info including wifi and web admin passwords.&lt;br /&gt;
* The sudo mesh volunteer attaches the sticker to the nodes power supply and puts the node back in the box with a set of instructions for how to install and use the node.&lt;br /&gt;
* The node is shipped to the new node owner!&lt;br /&gt;
&lt;br /&gt;
== Node management ==&lt;br /&gt;
&lt;br /&gt;
All nodes set up by sudo mesh automatically allow root access using an SSH key held by a few trusted sudo mesh organizers. This is to allow us to update the firmware and troubleshoot network issues. We inform node-owners of this fact and tell them how to prevent sudo mesh from accessing their nodes, but also indicate that they should be ready to manage their own node if they choose to do this.&lt;br /&gt;
&lt;br /&gt;
== Node Monitoring ==&lt;br /&gt;
&lt;br /&gt;
Currently, the peoples open network can be monitored in real time with an [https://peoplesopen.herokuapp.com heroku app]&lt;br /&gt;
Our exit nodes communicate to this URL using a monitor.sh script. This relays information about the number of active routes and number of active gateways. If the exit node doesn't check-in for longer than 2 minutes, it is assumed to be down.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Detailed Documentation==&lt;br /&gt;
*[[Mesh/Tracking]] - Problems and solutions related to tracking, logging and anonymity&lt;br /&gt;
*[[Mesh/WalkThrough]] - Easy how-to for setting up OpenWRT&lt;br /&gt;
**[[Mesh/Flashing Extender Antennas]] - How-to for Ubiquiti routers&lt;br /&gt;
**[[Mesh/OpenWRT]] - Experiences with the OpenWRT router firmware&lt;br /&gt;
*[[Mesh/Firmware]] - Everything related to our firmware&lt;br /&gt;
**[[Mesh/Firmware/Overview]] - High level view&lt;br /&gt;
**[[Mesh/Firmware/Flash]] - How to install the sudowrt firmware based on openwrt with supported hardware&lt;br /&gt;
**[[Mesh/Firmware/Splash page]] - Splash page / Captive Portal&lt;br /&gt;
**[[Mesh/Firmware/Bandwidth shaping]] - QoS / Bandwidth shaping&lt;br /&gt;
**[[Mesh/Firmware/Zeroconf]] - Issues related to mDNS and DNS-SD&lt;br /&gt;
**[[Mesh/Firmware/MTU_issues]] - MTU issues&lt;br /&gt;
**[[Mesh/Firmware/Web Admin Development]] - Web admin development&lt;br /&gt;
*[[Mesh/Network topology]] - High-level explanation of the mesh network structure&lt;br /&gt;
*[[Mesh/Specs]] - Specs sheet on different access points&lt;br /&gt;
*[[Mesh/Frequencies]] - Information on different frequencies.&lt;br /&gt;
*[[Mesh/Software tools]] - List of useful mesh troubleshooting tools&lt;br /&gt;
*[[Mesh/Terms]] - Hidden Node, Fresnal zone, and other jargons&lt;br /&gt;
*[[Mesh/Power]] - Stuff about power usage, batteries and solar power.&lt;br /&gt;
*[[Mesh/Monitoring]] - notes about how to monitor systems&lt;br /&gt;
*[[Mesh/Spectrum]] - Different forms of spectral analysis&lt;br /&gt;
*[[Mesh/Hardware support]] - Officially and unofficially supported hardware / routers&lt;br /&gt;
*[[Mesh/Relay setup]] - Setting up a relay node&lt;br /&gt;
*[[Mesh/Exit setup]] - Setting up an exit node&lt;br /&gt;
*[[Mesh/Spectrum mapping]] - The setup we use for mapping local spectrum and wifi usage &lt;br /&gt;
**[[Mesh/Spectrum mapping/XO-1 Laptop]] - How to configure an XO-1 laptop for use with our spectrum mapping setup&lt;br /&gt;
* [[Mesh/Install]] - physical installation notes/stories&lt;br /&gt;
* [[Mesh/Diagrams]] - technical diagrams to support new outreach materials&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/WalkThrough&amp;diff=11275</id>
		<title>Mesh/WalkThrough</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/WalkThrough&amp;diff=11275"/>
		<updated>2018-06-17T03:47:26Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Reconfigure your computer's network settings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Congratulations on choosing to become part of a People's Open Network! This is a walkthrough for flashing a node (a home router) with the SudoMesh's sudowrt-firmware (a custom build of OpenWRT) and then configuring it with makenode (a custom javascript tool developed by SudoMesh). At the end of the walkthrough, you'll be able to plug in your router and join the mesh. The walkthrough assumes you're using a linux-ish OS (mac OSX should work also) and that you have [https://help.ubuntu.com/community/UsingTheTerminal basic knowledge of the terminal]. The general idea of building your own mesh node consists of three steps, [[#Download/Build|downloading or compiling]] custom firmware, [[#Flash/Upload|flashing that firmware]] to the node (i.e. copying firmware to [https://en.wikipedia.org/wiki/Flash_memory flash memory]), and [[#makenode/Configure|configuring the node]] to function as part of a mesh (with a software tool such as makenode).&lt;br /&gt;
&lt;br /&gt;
Before you flash your router, it is recommended that you read the [[Home and extender nodes#Home_nodes|home node info]] to find out the router works as a mesh node.&lt;br /&gt;
&lt;br /&gt;
= Download/Build =&lt;br /&gt;
&lt;br /&gt;
Now that you have a node, you will probably want to learn how to flash it with the latest sudowrt-firmware. The first step is to download the firmware image file for your supported router. &lt;br /&gt;
&lt;br /&gt;
At the moment, we are supporting the following routers:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Name !! OpenWRT Doc !! Firmware Image&lt;br /&gt;
|-&lt;br /&gt;
| TP-Link WDR3500 || [https://wiki.openwrt.org/toh/tp-link/tl-wdr3500 OpenWRT Docs] || [https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-tl-wdr3500-v1-squashfs-factory.bin latest] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.0/ar71xx/openwrt-ar71xx-generic-tl-wdr3500-v1-squashfs-factory.bin 0.2.0] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.2/ar71xx/openwrt-ar71xx-generic-tl-wdr3500-v1-squashfs-factory.bin 0.2.2]&lt;br /&gt;
[https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-tl-wdr3500-v1-squashfs-factory.bin 0.2.3]&lt;br /&gt;
|-&lt;br /&gt;
| TP-Link WDR3600 || [https://wiki.openwrt.org/toh/tp-link/tl-wdr3600 OpenWRT Docs] || &lt;br /&gt;
[https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin latest] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.0/ar71xx/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin 0.2.0] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.2/ar71xx/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin 0.2.2]&lt;br /&gt;
[https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin 0.2.3]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| TP-Link WDR4300 || [https://wiki.openwrt.org/toh/tp-link/tl-wdr4300 OpenWRT Docs] || &lt;br /&gt;
[https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-tl-wdr4300-v1-squashfs-factory.bin latest] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.0/ar71xx/openwrt-ar71xx-generic-tl-wdr4300-v1-squashfs-factory.bin 0.2.0] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.2/ar71xx/openwrt-ar71xx-generic-tl-wdr4300-v1-squashfs-factory.bin 0.2.2]&lt;br /&gt;
[https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-tl-wdr4300-v1-squashfs-factory.bin 0.2.3]&lt;br /&gt;
|-&lt;br /&gt;
| Western Digital MyNet N600 || [https://wiki.openwrt.org/toh/wd/n600 OpenWRT Docs] || [https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-mynet-n600-squashfs-factory.bin latest] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.0/ar71xx/openwrt-ar71xx-generic-mynet-n600-squashfs-factory.bin 0.2.0] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.2/ar71xx/openwrt-ar71xx-generic-mynet-n600-squashfs-factory.bin 0.2.2]&lt;br /&gt;
[https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-mynet-n600-squashfs-factory.bin 0.2.3]&lt;br /&gt;
|-&lt;br /&gt;
| Western Digital MyNet N750 || [https://wiki.openwrt.org/toh/wd/n750 OpenWRT Docs] || &lt;br /&gt;
[https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-mynet-n750-squashfs-factory.bin latest] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.0/ar71xx/openwrt-ar71xx-generic-mynet-n750-squashfs-factory.bin 0.2.0] [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.2/ar71xx/openwrt-ar71xx-generic-mynet-n750-squashfs-factory.bin 0.2.2]&lt;br /&gt;
[https://zenodo.org/record/1205601/files/openwrt-ar71xx-generic-mynet-n750-squashfs-factory.bin 0.2.3]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Builds for other routers can be found on our [https://builds.sudomesh.org/builds/sudowrt/fledgling/0.2.0/ar71xx/ builds server] or on  [https://doi.org/10.5281/zenodo.1205601 zenodo], though there is no guarantee the firmware will work with any given router. For release notes, please go to our [https://github.com/sudomesh/sudowrt-firmware/releases github release pages].&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can build your own copy of the firmware images by following the guide in the [https://github.com/sudomesh/sudowrt-firmware sudowrt-firmware source].&lt;br /&gt;
&lt;br /&gt;
If you do not want to use a SudoMesh's OpenWRT image, you can also install [https://downloads.openwrt.org/ a standard OpenWRT] release and configure it from scratch.&lt;br /&gt;
&lt;br /&gt;
= Flash/Upload =&lt;br /&gt;
&lt;br /&gt;
Once you have a copy of the sudowrt-firmware intended for your router, you can proceed with flashing it to your router. There are different techniques for flashing each of the routers. Use the links above to the OpenWRT wiki and follow the instructions there to flash the router with the firmware you've downloaded.&lt;br /&gt;
&lt;br /&gt;
For convenience, if you have a Western Digital MyNet N600 or N750, follow these instructions:&lt;br /&gt;
&lt;br /&gt;
== Reset your new N750/N600 router ==&lt;br /&gt;
* Plug one end of the Ethernet cable into your laptop.&lt;br /&gt;
* Plug the other end of the Ethernet cable into one of the normal ports (LAN) on the router (not the Internet/WAN port).&lt;br /&gt;
* With the router plugged in and power turned off, push a pin into the reset hole and hold it.&lt;br /&gt;
* With the pin held down, turn on the router power button.&lt;br /&gt;
* Watch the front blue light - they will flash on and off a few times.&lt;br /&gt;
* Once the front blue is flashing, you can let go of the pin.&lt;br /&gt;
&lt;br /&gt;
== Configure your computer's network settings ==&lt;br /&gt;
On your laptop edit your network settings to reflect the following:&lt;br /&gt;
&lt;br /&gt;
* Network Manager Method: Manual&lt;br /&gt;
* IP Address: 192.168.1.10 (some devices will only accept from this IP)&lt;br /&gt;
* Subnet Mask: 255.255.255.0&lt;br /&gt;
* Gateway: 0.0.0.0 (Or leave blank)&lt;br /&gt;
&lt;br /&gt;
You can also use the commands:&lt;br /&gt;
  sudo ip link set &amp;lt;eth_interface&amp;gt; down &lt;br /&gt;
  sudo ip addr add 192.168.1.10/24 dev &amp;lt;eth_interface&amp;gt; &lt;br /&gt;
  sudo ip link set &amp;lt;eth_interface&amp;gt; up&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;eth_interface&amp;gt; is the name of your ethernet interface found using `ip addr` (common names include eth0, enp3s0, ...)&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [[Mesh/Network%20Configuration%20for%20Linux | Linux]], [[Mesh/Network%20Configuration%20for%20MacOS%20X | Mac]]&lt;br /&gt;
&lt;br /&gt;
== Upload sudowrt-firmware ==&lt;br /&gt;
In your web browser:&lt;br /&gt;
&lt;br /&gt;
* Go to [http://192.168.1.1 http://192.168.1.1], if the reset was successful, you should see the following page:&lt;br /&gt;
[[File:Screenshot from 2017-04-04 18-27-09.png|thumb|center|upright=2]]&lt;br /&gt;
* Click 'Browse' and select the firmware file you downloaded&lt;br /&gt;
* Click Upload and you will be taken to an exciting countdown timer:&lt;br /&gt;
[[File:Screenshot from 2017-04-02 17-20-51.png|thumb|center|upright=2]]&lt;br /&gt;
&lt;br /&gt;
Note: Sometimes the firmware upload will not complete. After you click on 'Upload' You should get a page with a countdown of 120+ seconds. If this does not occur, reboot the router with the pin reset button depressed (as noted above), and try again.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= makenode/Configure =&lt;br /&gt;
After flashing sudowrt-firmware to your router you will need to configure it work on a People's Open Network.&lt;br /&gt;
&lt;br /&gt;
== Reconfigure your computer's network settings ==&lt;br /&gt;
A freshly flashed node automatically sets its IP address to 172.22.0.1. You will need to configure your laptop to use the following network settings to communicate with the node.&lt;br /&gt;
&lt;br /&gt;
* IP address: 172.22.0.10 &lt;br /&gt;
* Subnet mask:  255.255.255.0&lt;br /&gt;
* Gateway: 0.0.0.0&lt;br /&gt;
&lt;br /&gt;
Or use the commands&lt;br /&gt;
  sudo ip link set &amp;lt;eth_interface&amp;gt; down &lt;br /&gt;
  sudo ip addr add 172.22.0.10/24 dev &amp;lt;eth_interface&amp;gt; &lt;br /&gt;
  sudo ip link set &amp;lt;eth_interface&amp;gt; up&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;eth_interface&amp;gt; is the name of your ethernet interface found using `ip addr` (common names include eth0, enp3s0, ...)&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
To test that the flashing was successful, feel free to try connecting to your unconfigured router by opening a browser and navigating to http://172.22.0.1&lt;br /&gt;
You can SSH into the node as root using the password 'meshtheplanet'. If the flash was successfull you should be brought to the following screen:&lt;br /&gt;
&lt;br /&gt;
[[File:Peoplesopen-dash.png|thumb|center|upright=2]]&lt;br /&gt;
&lt;br /&gt;
After you have successfully flashed your router with OpenWRT, you will need to use [https://github.com/sudomesh/makenode makenode] to complete the setup. makenode registers your node on the peoplesopen network, resulting in the assignment of a 64 IPv4 address subnet to your node, in addition to applying basic configuration.&lt;br /&gt;
&lt;br /&gt;
== Preparing your laptop for makenode ==&lt;br /&gt;
&lt;br /&gt;
You will need to install the dependencies for [https://github.com/sudomesh/makenode makenode].&lt;br /&gt;
&lt;br /&gt;
=== Linux ===&lt;br /&gt;
&lt;br /&gt;
If you are working with a fresh installation of one of the operating systems listed in the compatibility checklist, you will need to install a few pieces of software. &lt;br /&gt;
To install them, open your terminal and enter the following commands.&lt;br /&gt;
&lt;br /&gt;
  sudo apt update&lt;br /&gt;
  sudo apt install curl git dropbear&lt;br /&gt;
  curl -o- ht&amp;lt;span&amp;gt;tps://&amp;lt;/span&amp;gt;raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash&lt;br /&gt;
  export NVM_DIR=&amp;quot;$HOME/.nvm&amp;quot;  # or you can close and reopen your terminal before using nvm&lt;br /&gt;
  nvm install 7.10&lt;br /&gt;
&lt;br /&gt;
==== OS Compatibility checklist ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! OS !! Compatible !! Link to ISO !! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Ubuntu 16.04 LTS || yes || http://releases.ubuntu.com/16.04/ ||&lt;br /&gt;
|-&lt;br /&gt;
| Ubuntu 14.04 LTS || please verify || http://releases.ubuntu.com/14.04/ ||&lt;br /&gt;
|-&lt;br /&gt;
| Debian 9.3 Stretch || yes || https://www.debian.org/distrib/ ||&lt;br /&gt;
|-&lt;br /&gt;
| Debian 8.1 Jessie || yes || https://www.debian.org/releases/jessie/debian-installer/ ||&lt;br /&gt;
|-&lt;br /&gt;
| Arch Linux || yes || https://www.archlinux.org/download/ || you may have to build dropbear from [https://github.com/mkj/dropbear source]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Mac ===&lt;br /&gt;
&lt;br /&gt;
Install the [http://brew.sh/ Homebrew] package manager, then install the required binaries.&lt;br /&gt;
&lt;br /&gt;
  brew install nodejs&lt;br /&gt;
  brew install git&lt;br /&gt;
  brew install npm&lt;br /&gt;
  brew install dropbear&lt;br /&gt;
  brew install gnu-tar&lt;br /&gt;
  brew install fakeroot&lt;br /&gt;
  brew install iproute2mac&lt;br /&gt;
&lt;br /&gt;
=== Windows 10 (Experimental)===&lt;br /&gt;
&lt;br /&gt;
'''Note: Windows is not currently recommened for setting up a node due to Dropbear not supporting Windows. What follows is instructions for Windows Subsytem for Linux.'''&lt;br /&gt;
&lt;br /&gt;
Due to Dropbear requirements your best bet is to use [[Windows Subsystem for Linux]] (WSL) and follow the instructions for Linux with additional instructions to get WSL set up. Follow the instructions for [https://docs.microsoft.com/en-us/windows/wsl/install-win10 installing] WSL on your Windows 10 PC. For now Ubuntu has been tested and appears to work. SUSE and other WSL flavors have not been tested.&lt;br /&gt;
&lt;br /&gt;
Once WSL is installed. Install dependencies (assuming Ubuntu).&lt;br /&gt;
&lt;br /&gt;
  sudo apt update&lt;br /&gt;
  sudo apt install python&lt;br /&gt;
  sudo apt install make&lt;br /&gt;
  sudo apt install build-essential&lt;br /&gt;
&lt;br /&gt;
WSL doesn't fully support SYSV IPC so fakeroot needs to be rebuilt using tcp.&lt;br /&gt;
&lt;br /&gt;
  sudo update-alternatives --set fakeroot /usr/bin/fakeroot-tcp&lt;br /&gt;
&lt;br /&gt;
Follow Linux [[Mesh/WalkThrough#Linux | instructions]] for installing Dropbear and dependencies.&lt;br /&gt;
&lt;br /&gt;
== Install and run makenode ==&lt;br /&gt;
&lt;br /&gt;
From your terminal, run the following:&lt;br /&gt;
&lt;br /&gt;
  git clone https://github.com/sudomesh/makenode -b 0.0.1&lt;br /&gt;
  cd makenode&lt;br /&gt;
  npm install&lt;br /&gt;
  cp settings.js.example settings.js&lt;br /&gt;
&lt;br /&gt;
The default settings in &amp;lt;tt&amp;gt;settings.js&amp;lt;/tt&amp;gt; should suffice in most cases, but if you need to make changes, do them in &amp;lt;tt&amp;gt;settings.js&amp;lt;/tt&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Make sure the Ethernet cable is connected to the 4th port on the router, and that your computer has a working internet connection (e.g. over WiFi). From a terminal, you should be able to ping the home node at 172.22.0.1 &amp;lt;b&amp;gt;and&amp;lt;/b&amp;gt; arbitrary websites like github.com.&lt;br /&gt;
&lt;br /&gt;
Once your network configuration is refreshed, use the following command to run the script and configure your node:&lt;br /&gt;
&lt;br /&gt;
  ./makenode.js&lt;br /&gt;
&lt;br /&gt;
Now the configuration wizard will ask you a number of questions:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;enter valid hostname&amp;quot; - name of the box, will only be seen when you SSH into the router - For info on what constitutes a valid hostname, see: [http://stackoverflow.com/questions/3523028/valid-characters-of-a-hostname valid characters of a hostname]&lt;br /&gt;
* &amp;quot;max share upstream bandwidth&amp;quot; - how much of your home network upstream bandwidth you wish to share with the mesh network, measured in kbps (kilobits per second). So if you'd like to share 10mbps (megabits per second) enter &amp;quot;10000&amp;quot; or if you want to share 256kbps (kilobits per second) enter &amp;quot;256&amp;quot;. You may want to run a [http://www.dslreports.com/speedtest speed test] to find out how much bandwidth you have and determine how much you want to share.&lt;br /&gt;
* &amp;quot;max share downstream bandwidth&amp;quot; - how much of your home network upstream bandwidth you wish to share with the mesh network - eg. &amp;quot;512&amp;quot; would share 512 kbps&lt;br /&gt;
* &amp;quot;admin user password&amp;quot; - used to log into the admin dashboard where you can modify some settings at http://172.22.0.1 (if on wired connection) or http://172.30.0.1 (if on private wifi network)&lt;br /&gt;
* &amp;quot;root user password&amp;quot; - used to SSH into the router so you modify files and manually configure your router. Make sure that your root password is strong! If you don't enter a root password, a strong one will be generated and will be logged to screen. It's generally preferable to not use the root password at all and instead add an ssh key to the device, ssh keys are stored in /etc/dropbear/authorized_keys.&lt;br /&gt;
* &amp;quot;wifi transmit power&amp;quot; - set this to 23 dBm (which is equivalent to 200 milliwatts)&lt;br /&gt;
* &amp;quot;private wifi SSID&amp;quot; - name of the private wireless network that can be used to administer this router. It will be publicly visible so pick something amusing or descriptive.&lt;br /&gt;
* &amp;quot;private wifi password&amp;quot; - password for the private wireless network named in the previous step. It's the one you'll want to give to friends, so come up with something amusing or memorable. Note: it must be at least 8 characters long.&lt;br /&gt;
* &amp;quot;operator name&amp;quot; - name that the network admins can associate with the node - so use a unique name like your first name or location name&lt;br /&gt;
* &amp;quot;Operator email&amp;quot; - email that network admis can contact you at&lt;br /&gt;
* &amp;quot;Expected node address (optional)&amp;quot; - address location of node&lt;br /&gt;
&lt;br /&gt;
= Testing =&lt;br /&gt;
&lt;br /&gt;
After you're finished with the makenode configuration, your home node should be available for connections via your private WiFi SSID. Additionally the public SSID 'peoplesopen.net' will be available. &lt;br /&gt;
&lt;br /&gt;
A third interface named 'pplsopen.net-node2node' will be detectable as well. This is the interface used for the nodes to mesh with each other.&lt;br /&gt;
&lt;br /&gt;
At this point you're setup. For more information on using your node, such as accessing the web-based management interface, see [[Home and extender nodes#Home_nodes|Home node info]]&lt;br /&gt;
&lt;br /&gt;
For more technical details on the internals of the home node, see the [[Mesh/Technical_Overview]]&lt;br /&gt;
&lt;br /&gt;
For more in depth testing procedures, see our [https://github.com/sudomesh/babeld-lab/blob/master/operator_manual.md mesh node operator's manual].&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
If you get the error &amp;quot;no such file or directory&amp;quot;, open a new terminal and run this command to ensure that &amp;lt;tt&amp;gt;node&amp;lt;/tt&amp;gt; points to your NodeJS executable:&lt;br /&gt;
&lt;br /&gt;
  sudo ln -s nodejs node&lt;br /&gt;
&lt;br /&gt;
In the new terminal, return to the 'makenode' source code directory and try again:&lt;br /&gt;
&lt;br /&gt;
  npm install&lt;br /&gt;
  ./makenode.js&lt;br /&gt;
&lt;br /&gt;
= Flashing TP-Link Routers =&lt;br /&gt;
If you happen to come across a TP-Link router, such as a WDR4300, you may discover that the above instructions absolutely do not work. This is especially true if the router has previously been flashed with the sudowrt firmware (or any kind of OpenWRT or DD-WRT?). If you find yourself attempting to reflash a TP-Link router, you will first need to reset the router to its factory default firmware. Luckily, redconfetti has provided instructions on how to do this, http://www.rubycoloredglasses.com/2016/04/tp-link-wdr4300-recovery/ (TODO, test/update these instructions and copy them to this wiki)&lt;br /&gt;
&lt;br /&gt;
Next, updload the sudort-firmware manually through the router's gui? Presumably, I haven't gotten that far yet...&lt;br /&gt;
&lt;br /&gt;
After that, makenode should just work right?&lt;br /&gt;
&lt;br /&gt;
There also exists something called tp-flasher, https://github.com/sudomesh/tp-flasher. However, it is highly recommended that you avoid using this because there is a very good chance you will brick your router if you use it incorrectly. Of course, we don't want to discourage anyone from improving tp-flasher.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Flashing Extender Nodes =&lt;br /&gt;
&lt;br /&gt;
If you would like to make long distance point-to-point connections between two or more home nodes, you'll want to setup an extender node (a roof mounted antenna).&lt;br /&gt;
&lt;br /&gt;
See [[Mesh/Flashing extender nodes]]&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Home_and_extender_nodes&amp;diff=11274</id>
		<title>Mesh/Home and extender nodes</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Home_and_extender_nodes&amp;diff=11274"/>
		<updated>2018-06-17T02:44:32Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Home nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are two types of nodes in the mesh:&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
= Home nodes =&lt;br /&gt;
&lt;br /&gt;
Every node operator has a home node. The home node is a wifi router that does everything you need for the mesh. It must be kept indoors since home nodes don't like rain or sun. Each home node has two wifi radios and two antennas so they can talk to other mesh nodes on both the 2.4 and 5 gigahertz frequencies. Home nodes also have one wired network port for connecting to your existing internet connection (if you have one), two wired network ports to connect to any of your computers that don't have wifi and two wired network ports for connecting extender nodes (see next section).&lt;br /&gt;
&lt;br /&gt;
== Supported Hardware == &lt;br /&gt;
&lt;br /&gt;
At the moment, we are supporting the following routers for home nodes:&lt;br /&gt;
* [https://wiki.openwrt.org/toh/tp-link/tl-wdr3500 TP-Link WDR3500]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/tp-link/tl-wdr3600 TP-Link WDR3600] &lt;br /&gt;
* [https://wiki.openwrt.org/toh/tp-link/tl-wdr4300 TP-Link WDR4300] &lt;br /&gt;
* [https://wiki.openwrt.org/toh/wd/n600 Western Digital MyNet N600] &lt;br /&gt;
* [https://wiki.openwrt.org/toh/wd/n750 Western Digital MyNet N750]&lt;br /&gt;
&lt;br /&gt;
All of the supported hardware is currently 802.11n but OpenWRT support was recently added for the 802.11ac MediaTek MT76x2 chipsets. We're currently evaluating [[Mesh/802.11ac devices|these 802.11ac devices]] for use as home nodes. As soon as there is support for the VLAN switch functionality on MediaTek chipsets then we should be able to fully support these routers.&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
Instructions for flashing and configuring home nodes are at our [[Mesh/WalkThrough|walkthrough page]].&lt;br /&gt;
&lt;br /&gt;
== Info ==&lt;br /&gt;
&lt;br /&gt;
=== Wifi Signals/SSIDs ===&lt;br /&gt;
Home nodes broadcast 3 SSIDs (these are the wifi names that you can connect to):&lt;br /&gt;
* `peoplesopen.net` - the public network that anyone can connect to and that connects to the rest of the mesh&lt;br /&gt;
* `pplsopen.net-node2node` - the &amp;quot;adhoc&amp;quot; network that the node will use to connect to other routers&lt;br /&gt;
* (Your private SSID Name) - you can set a private ssid name and a wpa2 password to connect to the node. When you're connected to this network, you won't be connected to the rest of the mesh, and your traffic will not be routed through the mesh exit server. You can connect to this ssid to use the web admin to make basic config changes.&lt;br /&gt;
&lt;br /&gt;
=== Admin Access ===&lt;br /&gt;
Administrative tasks can be done with the web ui. You must be connected to the router via the &amp;quot;private&amp;quot; wifi signal/ssid. When connected over the private network, you can visit http://admin.peoplesopen.net or http://172.30.0.1&lt;br /&gt;
&lt;br /&gt;
You can log into this interface using 'admin' as the username, paired with the admin password used when the node was configured via [https://github.com/sudomesh/makenode makenode]&lt;br /&gt;
&lt;br /&gt;
In that web ui you can change the amount of bandwidth you'd like to share, the private ssid and wpa passwords, and the admin password.&lt;br /&gt;
&lt;br /&gt;
=== Root Login ===&lt;br /&gt;
When the node is originally configured, it is set with a root password. If you want shell access to the device, you can use this password to login as root. It's sort of generally preferable that you use ssh keys, which are stored on the node in `/etc/dropbear/authorized_keys`.&lt;br /&gt;
During alpha testing there will be three developer keys stored there so that our dev volunteers can access the devices for maintenance and diagnostics. If you want to remove access, feel free to comment out those lines, but please keep in mind that this limits our effectiveness to troubleshoot and upgrade during this period.&lt;br /&gt;
&lt;br /&gt;
=== Ethernet Ports ===&lt;br /&gt;
Home nodes are being configured with 1 WAN (internet port), 1 private network port, 1 &amp;quot;peoplesopen.net&amp;quot; port, and 2 &amp;quot;extender node&amp;quot; ports. &lt;br /&gt;
&lt;br /&gt;
The WAN port will be labeled &amp;quot;internet&amp;quot; and will be a different color than the rest. If you have a home internet connection that you'd like to share, connect this port to your upstream router or cable box from your ISP.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;peoplesopen.net&amp;quot; ports function as LAN ports on the network. They are assigned a DHCP lease/ip within the peoplesopen.net subnet and can access (and be accessed by) all of the other computers on the mesh. They are functionally equivalent to connecting to the &amp;quot;peoplesopen.net&amp;quot; ssid.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;extender node&amp;quot; ports are for connecting extender nodes, whose functions are detailed below. The home node will be running a `notdhcpserver` daemon listening on those ports, so if you connect an extender node to them, the two devices **should** automatically negotiate the correct ip address and additional parameters for the extender node.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, the different hardwares have different numbering for the non &amp;quot;internet&amp;quot; ports, so which ports are for extenders and which are &amp;quot;peoplesopen.net lan&amp;quot; ports will not always be the same from device to device. It's fairly easy to test, though. Simply connect a laptop or other computer to one. If it receives a DHCP lease/ip address within the mesh subnet (100.64.0.0/10), then it is a &amp;quot;peoplesopen.net&amp;quot; port. If not, then it is an extender port.&lt;br /&gt;
&lt;br /&gt;
= Extender nodes =&lt;br /&gt;
&lt;br /&gt;
Extender nodes are optional add-ons to your home node. They plug into your home node with a cable and act as a sort of extra antenna that extends the signal of your home node to reach mesh nodes that are further away. Extender nodes come in different shapes and sizes. You can get extender nodes that look like little parabolic dishes and these are suitable for mounting on your roof and making connections to other nodes several miles away! Or you can get ones that are flat and tall that are good for extending the signal out your window and to your close neighbours or maybe to a nearby park. Most extender nodes can be mounted outside and only need one cable that carries both data and power.&lt;br /&gt;
&lt;br /&gt;
To tell you the truth, each extender node isn't really just an antenna: They each have their own computers and wifi radios so they can talk on different wifi channels at the same time as your home node without causing interference.&lt;br /&gt;
&lt;br /&gt;
The extender nodes we explicitly support will extend [[#Wifi_Signals.2FSSIDs|all three of the wifi networks]] emitted by the home node (actually we're still working on the ability to extend the private network but it should be there soon). These extender nodes need to be flashed with our extender node firmware and automatically configure themselves correctly when plugged into a home node.&lt;br /&gt;
&lt;br /&gt;
The extender nodes that we explicitly support (referred to as smart extender nodes) are:&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/nanostationm5 Ubiquiti Nanostation M5]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/nanostationm2 Ubiquiti Nanostation M2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/picostationm2 Ubiquiti Picostation M2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/nanobeam Ubiquiti Nanobeam M2 and M5]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/picostationm2 Ubiquiti Picostation M2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/picostation2 Ubiquiti Picostation 2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/picostationm2 Ubiquiti Picostation M2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/bullet Ubiquiti Bullet M2 and M5]&lt;br /&gt;
&lt;br /&gt;
In addition we are working to add support for using any normal wifi router as an extender node without reflashing but using this method you will only be able to extend a single one of the wifi networks per extender node and the extender node will have to be manually configured. We refer to these as dumb extenders. This is useful if you want to use unsupported hardware such as the Ubiquiti Nanobeam.&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Home_and_extender_nodes&amp;diff=11273</id>
		<title>Mesh/Home and extender nodes</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Home_and_extender_nodes&amp;diff=11273"/>
		<updated>2018-06-17T02:43:47Z</updated>

		<summary type="html">&lt;p&gt;S3th: /* Ethernet Ports */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are two types of nodes in the mesh:&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
= Home nodes =&lt;br /&gt;
&lt;br /&gt;
Every node operator has a home node. The home node is a wifi router that does everything you need for the mesh. It must be kept indoors since home nodes don't like rain or sun. Each home node has two wifi radios and two antennas so they can talk to other mesh nodes on both the 2.4 and 5 gigaherz frequencies. Home nodes also have one wired network port for connecting to your existing internet connection (if you have one), two wired network ports to connect to any of your computers that don't have wifi and two wired network ports for connecting extender nodes (see next section).&lt;br /&gt;
&lt;br /&gt;
== Supported Hardware == &lt;br /&gt;
&lt;br /&gt;
At the moment, we are supporting the following routers for home nodes:&lt;br /&gt;
* [https://wiki.openwrt.org/toh/tp-link/tl-wdr3500 TP-Link WDR3500]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/tp-link/tl-wdr3600 TP-Link WDR3600] &lt;br /&gt;
* [https://wiki.openwrt.org/toh/tp-link/tl-wdr4300 TP-Link WDR4300] &lt;br /&gt;
* [https://wiki.openwrt.org/toh/wd/n600 Western Digital MyNet N600] &lt;br /&gt;
* [https://wiki.openwrt.org/toh/wd/n750 Western Digital MyNet N750]&lt;br /&gt;
&lt;br /&gt;
All of the supported hardware is currently 802.11n but OpenWRT support was recently added for the 802.11ac MediaTek MT76x2 chipsets. We're currently evaluating [[Mesh/802.11ac devices|these 802.11ac devices]] for use as home nodes. As soon as there is support for the VLAN switch functionality on MediaTek chipsets then we should be able to fully support these routers.&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
Instructions for flashing and configuring home nodes are at our [[Mesh/WalkThrough|walkthrough page]].&lt;br /&gt;
&lt;br /&gt;
== Info ==&lt;br /&gt;
&lt;br /&gt;
=== Wifi Signals/SSIDs ===&lt;br /&gt;
Home nodes broadcast 3 SSIDs (these are the wifi names that you can connect to):&lt;br /&gt;
* `peoplesopen.net` - the public network that anyone can connect to and that connects to the rest of the mesh&lt;br /&gt;
* `pplsopen.net-node2node` - the &amp;quot;adhoc&amp;quot; network that the node will use to connect to other routers&lt;br /&gt;
* (Your private SSID Name) - you can set a private ssid name and a wpa2 password to connect to the node. When you're connected to this network, you won't be connected to the rest of the mesh, and your traffic will not be routed through the mesh exit server. You can connect to this ssid to use the web admin to make basic config changes.&lt;br /&gt;
&lt;br /&gt;
=== Admin Access ===&lt;br /&gt;
Administrative tasks can be done with the web ui. You must be connected to the router via the &amp;quot;private&amp;quot; wifi signal/ssid. When connected over the private network, you can visit http://admin.peoplesopen.net or http://172.30.0.1&lt;br /&gt;
&lt;br /&gt;
You can log into this interface using 'admin' as the username, paired with the admin password used when the node was configured via [https://github.com/sudomesh/makenode makenode]&lt;br /&gt;
&lt;br /&gt;
In that web ui you can change the amount of bandwidth you'd like to share, the private ssid and wpa passwords, and the admin password.&lt;br /&gt;
&lt;br /&gt;
=== Root Login ===&lt;br /&gt;
When the node is originally configured, it is set with a root password. If you want shell access to the device, you can use this password to login as root. It's sort of generally preferable that you use ssh keys, which are stored on the node in `/etc/dropbear/authorized_keys`.&lt;br /&gt;
During alpha testing there will be three developer keys stored there so that our dev volunteers can access the devices for maintenance and diagnostics. If you want to remove access, feel free to comment out those lines, but please keep in mind that this limits our effectiveness to troubleshoot and upgrade during this period.&lt;br /&gt;
&lt;br /&gt;
=== Ethernet Ports ===&lt;br /&gt;
Home nodes are being configured with 1 WAN (internet port), 1 private network port, 1 &amp;quot;peoplesopen.net&amp;quot; port, and 2 &amp;quot;extender node&amp;quot; ports. &lt;br /&gt;
&lt;br /&gt;
The WAN port will be labeled &amp;quot;internet&amp;quot; and will be a different color than the rest. If you have a home internet connection that you'd like to share, connect this port to your upstream router or cable box from your ISP.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;peoplesopen.net&amp;quot; ports function as LAN ports on the network. They are assigned a DHCP lease/ip within the peoplesopen.net subnet and can access (and be accessed by) all of the other computers on the mesh. They are functionally equivalent to connecting to the &amp;quot;peoplesopen.net&amp;quot; ssid.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;extender node&amp;quot; ports are for connecting extender nodes, whose functions are detailed below. The home node will be running a `notdhcpserver` daemon listening on those ports, so if you connect an extender node to them, the two devices **should** automatically negotiate the correct ip address and additional parameters for the extender node.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, the different hardwares have different numbering for the non &amp;quot;internet&amp;quot; ports, so which ports are for extenders and which are &amp;quot;peoplesopen.net lan&amp;quot; ports will not always be the same from device to device. It's fairly easy to test, though. Simply connect a laptop or other computer to one. If it receives a DHCP lease/ip address within the mesh subnet (100.64.0.0/10), then it is a &amp;quot;peoplesopen.net&amp;quot; port. If not, then it is an extender port.&lt;br /&gt;
&lt;br /&gt;
= Extender nodes =&lt;br /&gt;
&lt;br /&gt;
Extender nodes are optional add-ons to your home node. They plug into your home node with a cable and act as a sort of extra antenna that extends the signal of your home node to reach mesh nodes that are further away. Extender nodes come in different shapes and sizes. You can get extender nodes that look like little parabolic dishes and these are suitable for mounting on your roof and making connections to other nodes several miles away! Or you can get ones that are flat and tall that are good for extending the signal out your window and to your close neighbours or maybe to a nearby park. Most extender nodes can be mounted outside and only need one cable that carries both data and power.&lt;br /&gt;
&lt;br /&gt;
To tell you the truth, each extender node isn't really just an antenna: They each have their own computers and wifi radios so they can talk on different wifi channels at the same time as your home node without causing interference.&lt;br /&gt;
&lt;br /&gt;
The extender nodes we explicitly support will extend [[#Wifi_Signals.2FSSIDs|all three of the wifi networks]] emitted by the home node (actually we're still working on the ability to extend the private network but it should be there soon). These extender nodes need to be flashed with our extender node firmware and automatically configure themselves correctly when plugged into a home node.&lt;br /&gt;
&lt;br /&gt;
The extender nodes that we explicitly support (referred to as smart extender nodes) are:&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/nanostationm5 Ubiquiti Nanostation M5]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/nanostationm2 Ubiquiti Nanostation M2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/picostationm2 Ubiquiti Picostation M2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/nanobeam Ubiquiti Nanobeam M2 and M5]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/picostationm2 Ubiquiti Picostation M2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/picostation2 Ubiquiti Picostation 2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/picostationm2 Ubiquiti Picostation M2]&lt;br /&gt;
* [https://wiki.openwrt.org/toh/ubiquiti/bullet Ubiquiti Bullet M2 and M5]&lt;br /&gt;
&lt;br /&gt;
In addition we are working to add support for using any normal wifi router as an extender node without reflashing but using this method you will only be able to extend a single one of the wifi networks per extender node and the extender node will have to be manually configured. We refer to these as dumb extenders. This is useful if you want to use unsupported hardware such as the Ubiquiti Nanobeam.&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
	<entry>
		<id>https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11272</id>
		<title>Mesh/Technical Overview</title>
		<link rel="alternate" type="text/html" href="https://sudoroom.org/mediawiki/index.php?title=Mesh/Technical_Overview&amp;diff=11272"/>
		<updated>2018-06-17T02:41:14Z</updated>

		<summary type="html">&lt;p&gt;S3th: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Stale]]&lt;br /&gt;
'''This page has been marked as [[:Category:Stale|stale]], as it is outdated to the point of providing significant misinformation. Please update it before linking other pages here.'''&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration extra-simplified.png|thumb|Illustration showing how a sudomesh home node can connect to a window-mounted extender node. The device with two antennas is the home node and the device on the outside of the window is an extender node.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home and extender node illustration.png|thumb|Illustration showing a more complicated setup. Here the node operator has connected their personal computer, a small Raspberry Pi computer and two extender nodes: One on the outside of the window and one on the roof (not shown but a can be seen going up and out of the frame). This is definitely an advanced node operator.]]&lt;br /&gt;
&lt;br /&gt;
[[File:Sudomesh home node ethernet ports.png|thumb|A close-up of the wired network ports on the home node and their use.]]&lt;br /&gt;
&lt;br /&gt;
== Home and extender nodes ==&lt;br /&gt;
&lt;br /&gt;
''Note: You can also read the [[home node|non-technical explanation of home nodes and extender nodes]].''&lt;br /&gt;
&lt;br /&gt;
Our mesh has two types of nodes: Home nodes and extender nodes.&lt;br /&gt;
&lt;br /&gt;
The home nodes run the full sudowrt firmware and a network of only home nodes can make a functioning mesh network if they are within 200 meters and LOS of each other. The home node is a normal five-ethernet-port indoor wifi router. An extender node runs a minimal firmware and does nothing on its own. Instead, the extender node basically acts as an extra radio and extends the networks reach when plugged in to a home node. &lt;br /&gt;
The node operator can choose to put a home node in e.g. their living room and if they decide they want a high speed directional link to a neighbour then they can put e.g. a Nanobridge M5 running the extender node firmware on their roof and connect it via ethernet to the home node. Or they could put a Nanostation M2 pointed out of their window and extend the signal further out into the street or to nearby neighbours. Each extender node extends all three networks (explained in the next section).&lt;br /&gt;
&lt;br /&gt;
For home nodes we are currently supporting the following [https://sudoroom.org/wiki/Mesh/WalkThrough#Download.2FBuild hardware]. We are not planning to support anything else for the time being, though if you have a good reason please let us know. For extender nodes we are currently supporting the Ubiquiti M series [https://sudoroom.org/wiki/Mesh/Flashing_extender_nodes#Flash_the_Extender_Node routers].&lt;br /&gt;
&lt;br /&gt;
The mesh is made up mostly of wifi routers using Atheros chipsets and running [https://github.com/sudomesh/sudowrt-firmware our own firmware] based on [http://openwrt.org/ OpenWRT], [http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ Babel] and wlan slovenja's [https://github.com/sudomesh/tunneldigger tunneldigger]. &lt;br /&gt;
&lt;br /&gt;
Node-owners can choose to connect the nodes to their existing internet connection using ethernet. If they have Internet access, they can share a portion of it with the mesh. The amount of bandwidth shared is limited with 'tc'. It is chosen at node-configuration time and can be changed using the simple built-in web admin interface.&lt;br /&gt;
&lt;br /&gt;
== The three wifi networks and IP assignment ==&lt;br /&gt;
&lt;br /&gt;
The nodes each run three wifi networks (three SSIDs on the same physical wifi interfaces):&lt;br /&gt;
&lt;br /&gt;
* The Open network with SSID peoplesopen.net is an open access point. Most people will use the network by connecting to this.&lt;br /&gt;
* The Mesh network with SSID pplsopen.net-node2node is an ad-hoc network that the nodes use to mesh with each other using the Babel mesh protocol.&lt;br /&gt;
* A private wifi network SSID that is named by the node owner (or a name is generated by makenode) and uses WPA2-PSK.&lt;br /&gt;
&lt;br /&gt;
All three of these networks are available on both 2.4 and 5 GHz on the home node. They are also all three available on any extender nodes plugged in to the home node. The three different networks are extended over a single ethernet cable using VLANs.&lt;br /&gt;
&lt;br /&gt;
If a node-owner is sharing internet, then the node will create a layer 2 (L2TP) tunnel to a VPN server on the Internet using tunneldigger. Babel (the mesh routing protocol) will connect over this tunnel to other nodes on the mesh, so the mesh can route traffic over the internet if no wifi path to another node is available (e.g. other nodes are physically too far away). When people connect to the peoplesopen.net access point and try to access the Internet, the traffic will flow through the VPuN, and the source IP of requests will appear to be the VPuN with the sudo mesh organization listed as the abuse contact. &lt;br /&gt;
&lt;br /&gt;
The nodes run DHCP servers and each have a /24 IPv4 subnet in the 100.64.0.0/10 range that is statically assigned by coordination between mesh groups and individuals hosting and administrating their own nodes on People's Open Network (currently only the sudo mesh organization).&lt;br /&gt;
&lt;br /&gt;
The private network does not limit bandwidth and provides access to both direct access to the Internet (if the node owner has hooked the node up to the Internet) and access to the mesh. Each node's private network runs on 172.30.0.0/16 and uses NAT between the private network and the mesh. It does not accept any new incoming connections from the mesh onto the 172.30.0.0/16 subnet.&lt;br /&gt;
&lt;br /&gt;
== Accessing Home Node via SSH ==&lt;br /&gt;
&lt;br /&gt;
Your home node is accessible via the [https://wiki.openwrt.org/doc/uci/dropbear Dropbear] Secure Shell (SSH) server on port 22.&lt;br /&gt;
&lt;br /&gt;
The 4 Ethernet ports that are provided with your router should be configured as follows:&lt;br /&gt;
&lt;br /&gt;
# Private network with DHCP of 172.30.0.x network addresses&lt;br /&gt;
# Public network with DHCP of 100.64.x.x network addresses (SudoMesh network)&lt;br /&gt;
# NotDHCP for Extender 1&lt;br /&gt;
# NotDHCP for Extender 2&lt;br /&gt;
&lt;br /&gt;
This may not apply to your router. For instance, the TP-Link N750 uses the opposite port assignment, with port 3 for private network, and port 4 for public SudoMesh/PeoplesOpen.net network.&lt;br /&gt;
&lt;br /&gt;
=== Network Settings ===&lt;br /&gt;
&lt;br /&gt;
=== Default Build Configuration ===&lt;br /&gt;
&lt;br /&gt;
The IP address of your home node is &amp;lt;tt&amp;gt;172.22.0.1&amp;lt;/tt&amp;gt; prior to configuration via the [https://github.com/sudomesh/makenode makenode] utility. You can SSH into the node as &amp;lt;tt&amp;gt;root&amp;lt;/tt&amp;gt; using the password 'meshtheplanet' after setting up your computer to use an IP on the 172.22.0.0/16 network.&lt;br /&gt;
&lt;br /&gt;
=== Post Makenode Configuration ===&lt;br /&gt;
&lt;br /&gt;
The private network configuration uses a 172.30.0.0/16 network with DHCP available for connected clients. You can configure your workstation to use the following manual network configuration so that you can SSH into your home node. &lt;br /&gt;
&lt;br /&gt;
* IP Address: 172.30.0.9 (or anything other than 172.30.0.1)&lt;br /&gt;
* Netmask: 255.255.255.0&lt;br /&gt;
* Gateway: 172.30.0.1&lt;br /&gt;
&lt;br /&gt;
See Network Configuration Guides: [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20Linux Linux] [https://sudoroom.org/wiki/Mesh/Network%20Configuration%20for%20MacOS%20X Mac]&lt;br /&gt;
&lt;br /&gt;
The IP of your home node on the private network is &amp;lt;tt&amp;gt;172.30.0.1&amp;lt;/tt&amp;gt;, with the root password you specified when running &amp;lt;tt&amp;gt;makenode&amp;lt;/tt&amp;gt; to configure it.&lt;br /&gt;
&lt;br /&gt;
  ssh root@172.30.0.1&lt;br /&gt;
  The authenticity of host '172.30.0.1 (172.30.0.1)' can't be established.&lt;br /&gt;
  RSA key fingerprint is b8:9d:4a:2f:1b:f5:e1:ae:b8:19:5b:70:92:8b:7f:34.&lt;br /&gt;
  Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&lt;br /&gt;
After accepting the key by entering 'yes' and pressing ENTER, it will ask you for the root password. &lt;br /&gt;
&lt;br /&gt;
=== SSH Keys ===&lt;br /&gt;
&lt;br /&gt;
If you'd like to add your ssh key to the router (instead of using a root password), add it to the &amp;lt;tt&amp;gt;configs/authorized_keys&amp;lt;/tt&amp;gt; file. You'll see that there are 3 other keys there for our developers. You can remove them if you'd like, but they're currently the only way we can provide remote support. During the alpha test phase we ask that you consider whether you are able to do diagnostics/debugging yourself before you remove them.&lt;br /&gt;
&lt;br /&gt;
== Node flashing and configuration ==&lt;br /&gt;
&lt;br /&gt;
One of our medium-term goals is to be able to sell nodes on our website and minimize the amount of work required to re-flash/configure the nodes and provide documentation for the user. To facilitate this, our current process for new nodes is:&lt;br /&gt;
&lt;br /&gt;
* A new node is flashed manually with the [https://github.com/sudomesh/sudowrt-firmware sudowrt] firmware.&lt;br /&gt;
* The node is then configured by a sudo mesh volunteer using our [https://github.com/sudomesh/makenode makenode] software.&lt;br /&gt;
* Makenode generates SSH keys, a SSH root password, a web admin password and a private wifi password. Then it configures the node, saves the info in the [https://github.com/sudomesh/node-database node database] and shuts down the node.&lt;br /&gt;
* Makenode then automatically [https://github.com/sudomesh/ql570 prints a sticker] containing some basic info including wifi and web admin passwords.&lt;br /&gt;
* The sudo mesh volunteer attaches the sticker to the nodes power supply and puts the node back in the box with a set of instructions for how to install and use the node.&lt;br /&gt;
* The node is shipped to the new node owner!&lt;br /&gt;
&lt;br /&gt;
== Node management ==&lt;br /&gt;
&lt;br /&gt;
All nodes set up by sudo mesh automatically allow root access using an SSH key held by a few trusted sudo mesh organizers. This is to allow us to update the firmware and troubleshoot network issues. We inform node-owners of this fact and tell them how to prevent sudo mesh from accessing their nodes, but also indicate that they should be ready to manage their own node if they choose to do this.&lt;br /&gt;
&lt;br /&gt;
== Node Monitoring ==&lt;br /&gt;
&lt;br /&gt;
Currently, the peoples open network can be monitored in real time with an [https://peoplesopen.herokuapp.com heroku app]&lt;br /&gt;
Our exit nodes communicate to this URL using a monitor.sh script. This relays information about the number of active routes and number of active gateways. If the exit node doesn't check-in for longer than 2 minutes, it is assumed to be down.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Detailed Documentation==&lt;br /&gt;
*[[Mesh/Tracking]] - Problems and solutions related to tracking, logging and anonymity&lt;br /&gt;
*[[Mesh/WalkThrough]] - Easy how-to for setting up OpenWRT&lt;br /&gt;
**[[Mesh/Flashing Extender Antennas]] - How-to for Ubiquiti routers&lt;br /&gt;
**[[Mesh/OpenWRT]] - Experiences with the OpenWRT router firmware&lt;br /&gt;
*[[Mesh/Firmware]] - Everything related to our firmware&lt;br /&gt;
**[[Mesh/Firmware/Overview]] - High level view&lt;br /&gt;
**[[Mesh/Firmware/Flash]] - How to install the sudowrt firmware based on openwrt with supported hardware&lt;br /&gt;
**[[Mesh/Firmware/Splash page]] - Splash page / Captive Portal&lt;br /&gt;
**[[Mesh/Firmware/Bandwidth shaping]] - QoS / Bandwidth shaping&lt;br /&gt;
**[[Mesh/Firmware/Zeroconf]] - Issues related to mDNS and DNS-SD&lt;br /&gt;
**[[Mesh/Firmware/MTU_issues]] - MTU issues&lt;br /&gt;
**[[Mesh/Firmware/Web Admin Development]] - Web admin development&lt;br /&gt;
*[[Mesh/Network topology]] - High-level explanation of the mesh network structure&lt;br /&gt;
*[[Mesh/Specs]] - Specs sheet on different access points&lt;br /&gt;
*[[Mesh/Frequencies]] - Information on different frequencies.&lt;br /&gt;
*[[Mesh/Software tools]] - List of useful mesh troubleshooting tools&lt;br /&gt;
*[[Mesh/Terms]] - Hidden Node, Fresnal zone, and other jargons&lt;br /&gt;
*[[Mesh/Power]] - Stuff about power usage, batteries and solar power.&lt;br /&gt;
*[[Mesh/Monitoring]] - notes about how to monitor systems&lt;br /&gt;
*[[Mesh/Spectrum]] - Different forms of spectral analysis&lt;br /&gt;
*[[Mesh/Hardware support]] - Officially and unofficially supported hardware / routers&lt;br /&gt;
*[[Mesh/Relay setup]] - Setting up a relay node&lt;br /&gt;
*[[Mesh/Exit setup]] - Setting up an exit node&lt;br /&gt;
*[[Mesh/Spectrum mapping]] - The setup we use for mapping local spectrum and wifi usage &lt;br /&gt;
**[[Mesh/Spectrum mapping/XO-1 Laptop]] - How to configure an XO-1 laptop for use with our spectrum mapping setup&lt;br /&gt;
* [[Mesh/Install]] - physical installation notes/stories&lt;br /&gt;
* [[Mesh/Diagrams]] - technical diagrams to support new outreach materials&lt;/div&gt;</summary>
		<author><name>S3th</name></author>
	</entry>
</feed>