doc/Network: Add VLAN 44 for HAMNET
[noc.git] / doc / Network.mdwn
1 # Network infrastructure
2
3 ## Networks
4
5 NOC operates a number of networks, available as tagged VLANs on the core
6 switches (one in each half of the hackerspace).  These networks are:
7
8 | name     | VLAN id | Extra subnets    | Comment                              |
9 |----------|---------|------------------|--------------------------------------|
10 | mgmt     |      32 | --               | Management network                   |
11 | iot      |      33 | --               | IoT devices, room infrastructure     |
12 | svc      |      34 | --               | Services LAN, see below              |
13 | pub      |      36 | 89.106.211.64/27 | Publicly-available services          |
14 | [HAMNET] |      44 | 44.0.0.0/8       | Amateur Radio Digital Communications |
15 | guests   |     127 | --               | Exposed through the “realraum” SSIDs |
16 | members  |     128 | 89.106.211.32/27 | Accessed with per-member credentials |
17 | `0xFF`   |     255 | --               | Funkfeuer VLAN                       |
18
19 [HAMNET]: https://wiki.oevsv.at/index.php/Kategorie:Digitaler_Backbone
20
21
22 ### `svc` -- Services LAN
23
24 This network is intended for services that aren't directly exposed to users
25 (be they humans or machines); this includes services exposed through a frontend
26 (like realraum web services) and services only meant to be consumed by another
27 service (like a database server).
28
29
30 ### `pub` -- Publicly-available services
31
32 This network is intended for services that can be consumed by non-NOC systems,
33 including our HTTP(S) frontend -- `entrance`, `mqtt`, ...
34
35 Services in this network can restrict availability, for instance by only
36 allowing clients connecting from our LANs, or by requiring authentication.
37
38 No RFC 1918 subnet is used on this network, only `89.106.211.64/27`.
39
40
41 ### Conventions
42
43 We use a number of conventions to make things more consistent:
44
45 - The DNS zone for a given network is `NET.realraum.at`, with the exception
46   of `pub` (which uses `realraum.at`) and of the Funkfeuer VLAN (which has no
47   `realraum.at` zone).
48 - Networks using RFC 1918 IP space use the 192.168.VID.0/24 subnet;
49   for instance, the `iot` network has id 33 and uses the 192.168.33.0/24 subnet.
50 - The gateway for a network is on the last IP for the subnet.
51
52
53 ### Routing and firewall rules
54
55 This network diagram represents networks, and the connection flows between them:
56 an arrow from A to B means that a connection can be opened from network A to
57 network B.  In all cases, a subset of ICMP (ECHO, ...) is allowed.
58
59 Note that any given system might have interfaces in several of these networks.
60
61 [[!img Network/overview.svg alt="r³ network overview"]]
62
63
64 ## WiFi
65
66 Each location has a single AP, `ap{0,1}.mgmt.realraum.at`, which provides SSIDs
67 for the IoT network (`realstuff`) and the LAN (`realraum` and `realraum5`);
68 we use Ubiquity hardware running OpenWRT.
69
70
71 ## Physical locations
72
73 The switches have hostnames `sw{0,1}.mgmt.realraum.at`, and the WiFi access
74 points are similarly `ap{0,1}.mgmt.realraum.at`. `0` denotes the main room, and
75 `1` denotes the second appartment.
76
77
78 ### W2
79
80 #### Room 1
81
82 r1w2 has two fiber connections: one to the main room, and one to the radio room.
83 (We use fiber to avoid creating a ground loop between the locations.)
84
85 In r1w2, we have a rack hosting a number of devices:
86
87 - the patch panel and core switch (`sw1.mgmt.realraum.at`) for W2;
88 - the `alfred` virtualization server;
89 - miscelaneous devices:
90   - RIPE ATLAS probe;
91   - some Raspberry Pi belonging to members;
92   - ...
93
94 **Note:** members setting up devices that only need power and network access
95           should do so in this rack (or even better, run a VM or a container
96           on `alfred`).
97
98
99 #### realfunk
100
101 realfunk receives the `0xFF` and `guests` VLANs trunked on a single fiber;
102 the switch there, `sw2.mgmt.realraum.at`, provides untagged ports on either VLAN.
103
104 Moreover, there is a Funkfeuer node there; it *does not* advertise the realraum
105 SSIDs.
106
107
108 ### Main room
109
110 The main room has its patch panel and core switch (`sw0.mgmt.realraum.at`) in
111 Cx. The patch panel has a fiber link to r2w1, and a copper link to an external
112 antenna for our link to Funkfeuer.
113
114 The network shelf in Cx also houses some important devices:
115
116 - `gw.realraum.at`;
117 - `smsgw.mgmt.realraum.at`, plus its mobile phone;
118 - the PoE injectors for `ap0.mgmt.realraum.at` and `sch24.r3.ffgraz.net`;
119 - `test.r3.ffgraz.net`, which is a test Funkfeuer node.