...
In der Freiherr-von-Ketteler Schule Warendorf haben wir folgendes Netz gebaut::technik:ff-fvk.png?800|
draw.io Diagramm |
---|
border | true |
---|
viewerToolbar | true |
---|
| |
---|
fitWindow | false |
---|
diagramName | ffwaf-fvk |
---|
simpleViewer | false |
---|
width | 400 |
---|
revision | 1 |
---|
|
In der Freifunk-Karte das aktuell hier: http://ffwaf-srv2.freifunk-muensterland.net/map/#!v:m;n:e894f6681aa4
An zwei Stellen wird von Nachbar mit einem TP-Link 1043 ein DSL Zugang gestellt:
...
Zunächst muss der interne Switch (port 0) tagging unterstützen. Da sich dann aber der Name der bridge ändert (von eth1 auf eth1.1) bietet sich ein reboot an:
Codeblock |
---|
|
uci set network.@switch_vlan[0].ports="0t 1 2 3 4"
uci set network.mesh_lan.ifname=eth1.1
uci commit
reboot
|
Jetzt wird ein neues VLAN 3 erzeugt und dem port 4 mitgeteilt, dass dort das VLAN 3 tagged anliegen soll. In dem VLAN soll das Freifunk (client) Netz eingebunden werden:
Codeblock |
---|
|
uci add network switch_vlan
uci set network.@switch_vlan[-1].device=switch0
uci set network.@switch_vlan[-1].vlan=3
uci set network.@switch_vlan[-1].ports="0t 4t"
uci set network.client.ifname="eth1.3 bat0"
|
...
Der ffwaf-fvk-uap1 hängt am LAN-Interface der Nano vor Ort. Da hier auch mehrere Mesh durchgeführt werden sollen, muss das Interface in den tagged-Modus versetzt werden. Im Gegensatz zu den 1043 können die TP-Link TL-WDR3600 leider entweder tagged oder untagged auf einem Interface. Auf VLAN 4 wird das mesh vom ffwaf-hermanstrasse16 aufgenommen. In VLAN 5 wird das mesh von ffwaf-hermanstrasse24 transportiert.
Vlan4
Codeblock |
---|
|
uci add network switch_vlan
uci set network.@switch_vlan[-1].device=switch0
uci set network.@switch_vlan[-1].vlan=4
uci set network.@switch_vlan[-1].ports="0t 2t"
uci set network.mesh_lan.ifname="eth0.4"
|
Vlan5 - eine Bridge über port2 und port3
Codeblock |
---|
|
uci add network switch_vlan
uci set network.@switch_vlan[-1].device=switch0
uci set network.@switch_vlan[-1].vlan=5
uci set network.@switch_vlan[-1].ports="0t 2t 3t"
|
uci set network.transp=interface
Codeblock |
---|
|
uci set network.transp.ifname=eth0.5
uci set network.transp.auto=1
uci set network.transp.type=bridge
uci set network.transp.macaddr=ea:95:f9:68:1a:a4
uci set network.transp.igmp_snooping=0
uci set network.transp.proto=none
|
...
Das Vlan4 wird nicht zum ffwaf-fvk-uap2 durchgereicht. In dem Fall würde ffwaf-fvk-uap2 einen direkten Link zum ffwaf-hermanstrasse16 haben! Stattdessen wird ein neues VLAN6 erstellt und mit dem Batman verbunden:
Vlan6
Codeblock |
---|
|
uci add network switch_vlan
uci set network.@switch_vlan[-1].device=switch0
uci set network.@switch_vlan[-1].vlan=6
uci set network.@switch_vlan[-1].ports="0t 3t"
|
und
Codeblock |
---|
|
uci set network.mesh_lanz=interface
uci set network.mesh_lanz.macaddr=ea:95:f8:68:1a:a4
uci set network.mesh_lanz.mesh=bat0
uci set network.mesh_lanz.proto=batadv
uci set network.mesh_lanz.auto=1
uci set network.mesh_lanz.ifname=eth0.6
|
lanz steht für lan zwo. Mir viel auf die schnelle nichts besserer ein. Ein batctrl if sollte jetzt in folgendes liefern:
Codeblock |
---|
|
# batctl if
mesh0: active
mesh1: active
eth0.4: active
eth0.6: active
|
...
Über Vlan5 erhalten wir den Mesh von ffwaf-hermanstrasse24:
Codeblock |
---|
|
uci add network switch_vlan
uci set network.@switch_vlan[-1].device=switch0
uci set network.@switch_vlan[-1].vlan=5
uci set network.@switch_vlan[-1].ports="0t 2t"
|
und (land steht für „lan drei“, weil mir wieder nix besseres eingefallen ist...)
Codeblock |
---|
|
uci set network.mesh_land=interface
uci set network.mesh_land.macaddr=66:67:b6:c6:f9:d2
uci set network.mesh_land.mesh=bat0
uci set network.mesh_land.proto=batadv
uci set network.mesh_land.auto=1
uci set network.mesh_land.ifname=eth0.5
|
Über Vlan6 erhalten wir den Mesh von ffwaf-hermanstrasse16:
Codeblock |
---|
|
uci add network switch_vlan
uci set network.@switch_vlan[-1].device=switch0
uci set network.@switch_vlan[-1].vlan=6
uci set network.@switch_vlan[-1].ports="0t 2t"
|
sowie:
Codeblock |
---|
|
uci set network.mesh_lanz=interface
uci set network.mesh_lanz.macaddr=66:67:b5:c6:f9:d2
uci set network.mesh_lanz.mesh=bat0
uci set network.mesh_lanz.proto=batadv
uci set network.mesh_lanz.auto=1
uci set network.mesh_lanz.ifname=eth0.6
|
Ein batctrl if sollte jetzt in folgendes liefern:
Codeblock |
---|
|
# batctl if
mesh0: active
mesh1: active
eth0.5: active
eth0.6: active
|
...