Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nameing/Numbering Standards #21

Closed
12 of 17 tasks
darkdrgn2k opened this issue Jun 21, 2020 · 12 comments
Closed
12 of 17 tasks

Nameing/Numbering Standards #21

darkdrgn2k opened this issue Jun 21, 2020 · 12 comments
Labels
network Network Planning, Design and Operations

Comments

@darkdrgn2k
Copy link
Contributor

darkdrgn2k commented Jun 21, 2020

This initial comment is collaborative and open to modification by all.

Task Summary

🎟️ Re-ticketed from: #
πŸ“… Due date: N/A
🎯 Success criteria: ...

IP Standard

We will be using IPv4 and IPv6 Ip addresses for the mesh
Fun Fact: IPv6 Address is in the fd::/8 range. The bytes of 74 6F 6D 73 86 converted into ASCII spell TOMSH (lowe case for backhaul range)

IPv4 subnets that will be used

  • /32 - Single Host
  • /30 - PtP L2TP etc
  • /24 - Subnets

Backhaul network

Used for super nodes and core controlled network components

IPv4: 100.64.0.0/10

IPv6: FD54:4f4d:5348::/48

Address:   100.64.0.0            01100100.01 000000.00000000.00000000
Netmask:   255.192.0.0 = 10      11111111.11 000000.00000000.00000000
Wildcard:  0.63.255.255          00000000.00 111111.11111111.11111111
=>
Network:   100.64.0.0/10         01100100.01 000000.00000000.00000000 (Class A)
Broadcast: 100.127.255.255       01100100.01 111111.11111111.11111111
HostMin:   100.64.0.1            01100100.01 000000.00000000.00000001
HostMax:   100.127.255.254       01100100.01 111111.11111111.11111110
Hosts/Net: 4194302 

IPv4: 10.0.0.0/8

IPv6: FD74:6F6D:73:86::/48

Used for community hubs and non-core devices

Address:   10.0.0.0              00001010 .00000000.00000000.00000000
Netmask:   255.0.0.0 = 8         11111111 .00000000.00000000.00000000
Wildcard:  0.255.255.255         00000000 .11111111.11111111.11111111
=>
Network:   10.0.0.0/8            00001010 .00000000.00000000.00000000 (Class A)
Broadcast: 10.255.255.255        00001010 .11111111.11111111.11111111
HostMin:   10.0.0.1              00001010 .00000000.00000000.00000001
HostMax:   10.255.255.254        00001010 .11111111.11111111.11111110
Hosts/Net: 16777214              (Private Internet)

Supernode Name Standards

The supernode hostname is snXyY and where X is assigned by the Network Planning, Design and Operations working group, and yY is chosen by the node operator to identify network components within the node. For example a1 for antenna 1 and r1 for router 1.

All hostnames will be unique across the mesh.

The supernode devices will also use a domain in the format operator.tcn.tomesh.net. A DNS and reverse DNS entry will be made for each device with such a domain name. For simplicity a super node will also carry an entry with the domain of nodename.tcn.tomesh.net

For example a FQDN (fully qualified domain name) will be sn1a1.core.tcn.tomesh.net for a device operated by the core team at Toronto Community Network. The node will also answer as sn1a1.tcn.tomesh.net

SSID

Public SSID

Public SSID will not extend the BABELD protocol. They are standard access points connections for the public to access the mesh.

Format
tomesh.net

Mesh SSID

Mesh SSID are used to extend the mesh network. They have BABELD running on them. They can be one of several protocols.

Format

tomesh-(protocol)[-(meshid)]

parameters

tomesh- is a constant and never changes

(protocol) is he protocol name the SSID is running. This could be for example airmaxac,80211s,adhoc

(meshid) Optional part of the string when SSIDs need to be isolated. PtP and PtMP antennas will use their hostnames

Example

a tomesh node with hostname of sn1a1 runing airmax-ac protocol would be
tomesh-airmaxac-sn1a1

a tomesh node with running 80211s would be
tomesh-80211s

IP Standard

To Do

  • IP Address Assignment
    • Select IPv4 Addresses
    • Select IPv6 Addresses
  • Access Point Naming
    • public open access SSID
    • public mesh network SSID
    • Super Node SSID
  • Hostnames
    • Super Node Naming
      • Antenna Naming
      • Router Naming
    • Support Hardware (ie POE switch, exit node, etc) Naming
  • Domain Names
    • Supernodes
    • Supporting Infrastructure
    • Other nodes
  • Move decision in docs
@darkdrgn2k darkdrgn2k added this to the PHASE I milestone Jun 21, 2020
@darkdrgn2k darkdrgn2k changed the title Namiming/Numbering Standards Nameing/Numbering Standards Jun 21, 2020
@darkdrgn2k
Copy link
Contributor Author

darkdrgn2k commented Jun 21, 2020

Suggested IP4 -> IP6 mapping

Example address 10.20.30.40

Start with fd74:6f6d:73

If first Octet is 100 append 69 otherwise 68 (method modified see first post)

Append Second and Third octet by convert to HEX
20=13
30=1e
Use Last octet of IPv4 as Last octet of IPv6 after converted to hex
40=28
Set as /64

Final IP
fd74:6f6d:7368:131e::28/64

@darkdrgn2k
Copy link
Contributor Author

NYC method of node naming

We have a google form at nycmesh.net/join that goes into a spreadsheet. the node number is basically the row number in the spreadsheet.

@darkdrgn2k
Copy link
Contributor Author

Information sheet used by installer
https://docs.nycmesh.net/installs/documents/Installation_Member-Form.pdf

@darkdrgn2k darkdrgn2k added the network Network Planning, Design and Operations label Jul 19, 2020
@darkdrgn2k
Copy link
Contributor Author

darkdrgn2k commented Jul 19, 2020

SSID Naming suggestions

public open access SSID

"tomesh.net" - will work as an advertising medium as well

public mesh network SSID

"tome"
Because non-initiated people should not be connecting to these adhoc/802.11s network name it something obscure
(following libremesh's version they call lime)

sector SSID

TOMESH-AC-SN#A#

TOMESH <- identifier
AC <- protocol in this case AirMax-AC
SN# <- Super Node #
A# <- Antenna #

@Shrinks99
Copy link
Member

"tomesh.net" is good with me, "tome" is kinda weird because it isn't really a word, how about "meshlink"?

I get that we don't want people trying to join the public mesh SSID, I know I've brought this up before but is there any reason we can't hide it to prevent average folks from trying to connect to it?

@darkdrgn2k
Copy link
Contributor Author

"tome" is kinda weird because it isn't really a word

So people wont connect to it and expect anything

"meshlink"

Doable but may indicate that they will get something when they connect

any reason we can't hide it

Hiding is really pointless, it doesn't REALLY hide it.

Also adds an unnecessary dimension to configure and connect to. Also i don't know how it will react in an ADHOC MESHPOINT setup, we have enough going against us as it is.

If some one does connect to it.... nothing will happen

@Shrinks99
Copy link
Member

I know that hiding SSIDs doesn't stop anyone from connecting to them, what it does do is offer a better user experience for everyone who will inevitably try to connect to it and find that it does nothing by not showing it to people. AFAIK this kind of use case is perfect for hidden SSIDs. The name of the network doesn't actually matter, the fact that it is open is all I think people will care about.

That said, if it makes other aspects harder then I agree it isn't a priority.

@benhylau
Copy link
Member

benhylau commented Jul 20, 2020

I think we shouldn't hide it, it makes it difficult when we want to extend the mesh or located ourselves. They don't hide them in Guifi or Libremesh either. Instead I agree on clear naming convention to indicate what it is.

@darkdrgn2k your original post "public mesh network SSID" header is missing a "not" can you edit it?

Why not follow same convention for both tomesh-adhoc-meshid, tomesh-802.11s-meshid, tomesh-airmax-sn0a3? This way the infrastructure is transparent and ppl who know what they are doing have all the info to connect whereas the names are weird enough that ppl who see tomesh.net will try that first instead.

Please don't mix airmax with AC, I think indicating it is airmax is much more important than that it is ac. If you like we can use airmaxac?

@darkdrgn2k
Copy link
Contributor Author

Please don't mix airmax with AC, I think indicating it is airmax is much more important than that it is ac.

ubiquity called their products AC like LiteBeam AC or LAP-120 AC. But I agree maybe adding the full name of the protocol would be advisable.

I'm was just worried about the length of the name, names that are to long may start breaking is maybe? But I think I have seen some longer ones. By spec SSID can be no more then 32.

also in "tomesh-802.11s-meshid" what is meshid? shouldn't it be the same for all nodes?

As for hiding, you know my option on that

  • its actually "obscure" not "hide"
  • Not always available
  • Makes it that much harder to configure
  • Makes it that much harder to debug

@benhylau
Copy link
Member

meshid is usually same but written in name tells ppl how to connect, and allow for future deviations? e.g. if we want one antenna to mesh in one direction, another to mesh in another direction, etc.

+1 to not obscure/hide the SSIDs.

@darkdrgn2k
Copy link
Contributor Author

ahh i see, is it optional
ie should the general one be tomesh-802.11s

@darkdrgn2k
Copy link
Contributor Author

darkdrgn2k commented Jul 25, 2020

meshid is usually same but written in name tells ppl how to connect, and allow for future deviations? e.g. if we want one antenna to mesh in one direction, another to mesh in another direction, etc.

+1 to not obscure/hide the SSIDs.

Looking at the naming of the existing antennas

**Can we can say **
(Excluding public WiFi APs that don't do meshing)

ALL SSID will consists of tomesh-protocol[-meshid]

This fits our SUPER NODE ANTENNA naming schema already as its
tomesh-protocol-hostname
(ie tomesh-airmaxac-sn1a1)

in this case hostname is the meshid

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
network Network Planning, Design and Operations
Development

No branches or pull requests

3 participants