2016-11-05 22:18:25 +02:00
|
|
|
|
% Инфраструктурата на OpenFest 2016
|
|
|
|
|
% жица, брат ми
|
|
|
|
|
% OpenFest team \<team@openfest.org\>
|
|
|
|
|
|
|
|
|
|
# За какво ще ви говорим
|
|
|
|
|
|
|
|
|
|
## За какво ще ви говорим
|
|
|
|
|
|
|
|
|
|
* Мрежа
|
|
|
|
|
* Wireless
|
|
|
|
|
* Monitoring
|
|
|
|
|
* Ток
|
|
|
|
|
* Видео
|
|
|
|
|
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![Къде сме](isom.png)
|
|
|
|
|
|
|
|
|
|
# Мрежа
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![Логическа топология](network.png)
|
|
|
|
|
|
|
|
|
|
## Цел
|
|
|
|
|
|
|
|
|
|
* Гигабитова мрежа
|
|
|
|
|
* IPv4 и IPv6
|
|
|
|
|
* Издръжлива на прекъсвания
|
|
|
|
|
* Да може да носи всичкия потребителски и служебен трафик
|
|
|
|
|
* много видео трафик
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Техника
|
|
|
|
|
|
|
|
|
|
* core switch-ове
|
|
|
|
|
* 7 x TP-Link SG3210 (буквално железни)
|
|
|
|
|
* 2 x Cisco 3750G
|
|
|
|
|
* workshop switch-ове (от кол и въже)
|
|
|
|
|
* HP 1800-24G
|
|
|
|
|
* 2 x Cisco 2970
|
|
|
|
|
* 2 x Mikrotik cloud router switch
|
|
|
|
|
* router
|
|
|
|
|
* DL380 G5
|
|
|
|
|
* много много кабели
|
|
|
|
|
* PoE инжектори
|
|
|
|
|
|
|
|
|
|
## Снабдяване
|
|
|
|
|
|
|
|
|
|
* Добри хора
|
|
|
|
|
* netissat (за поредна година)
|
|
|
|
|
* devhex
|
|
|
|
|
* securax
|
|
|
|
|
* initLab
|
|
|
|
|
* ebay
|
|
|
|
|
* изпадат понякога много евтино switch-ове
|
|
|
|
|
|
|
|
|
|
## До-снабдяване
|
|
|
|
|
|
|
|
|
|
* ПРИЕМАМЕ ДАРЕНИЯ
|
|
|
|
|
* наистина, малко гигабитова техника няма да откажем
|
|
|
|
|
* или 10-гигабитова
|
|
|
|
|
* ... или 100-гигабитова
|
|
|
|
|
|
|
|
|
|
## Топология
|
|
|
|
|
|
|
|
|
|
* Мрежа с много кръгове
|
|
|
|
|
* MSTP
|
|
|
|
|
* Жици навсякъде
|
|
|
|
|
* Един leaf, за NOC
|
|
|
|
|
* ако NOC-а не работи, ще пречи само на мрежарите
|
|
|
|
|
* те така и така не са хора
|
|
|
|
|
|
2016-11-06 10:26:52 +02:00
|
|
|
|
##
|
2016-11-05 22:18:25 +02:00
|
|
|
|
|
|
|
|
|
![Партер/1ви ет.](parter.png)
|
|
|
|
|
|
2016-11-06 10:26:52 +02:00
|
|
|
|
##
|
2016-11-05 22:18:25 +02:00
|
|
|
|
|
|
|
|
|
![1ви балkon/2ри ет.](balkon1.png)
|
|
|
|
|
|
|
|
|
|
## Uplink
|
|
|
|
|
|
|
|
|
|
* 300 mbps през NetX
|
|
|
|
|
* едно оптично трасе, което опънаха заради нас миналата година
|
|
|
|
|
* в момента влиза през фасадата през една тръба до нас
|
|
|
|
|
* моля не го режете, преди да свърши събитието
|
|
|
|
|
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![Сървърно преди 1](srvb1.jpg)
|
|
|
|
|
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![Сървърно преди 2](srvb2.jpg)
|
|
|
|
|
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![Сървърно след](srva.jpg)
|
|
|
|
|
|
2016-11-06 09:46:42 +02:00
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![терариум - NOC](noc1.jpg)
|
|
|
|
|
|
|
|
|
|
##
|
2016-11-05 22:18:25 +02:00
|
|
|
|
|
2016-11-06 09:46:42 +02:00
|
|
|
|
![... или кланица](noc2.jpg)
|
2016-11-05 22:39:30 +02:00
|
|
|
|
|
2016-11-06 09:46:42 +02:00
|
|
|
|
##
|
2016-11-05 22:39:30 +02:00
|
|
|
|
|
2016-11-06 09:46:42 +02:00
|
|
|
|
![а такава мрежа не сме правили](not-our.jpg)
|
2016-11-05 22:39:30 +02:00
|
|
|
|
|
2016-11-05 22:18:25 +02:00
|
|
|
|
##
|
2016-11-06 09:46:42 +02:00
|
|
|
|
|
|
|
|
|
![но свързахме дори това към нас](linked.jpg)
|
|
|
|
|
|
2016-11-05 22:18:25 +02:00
|
|
|
|
|
|
|
|
|
## routing и т.н.
|
|
|
|
|
|
|
|
|
|
* прост linux
|
|
|
|
|
* deban iptables и NAT (бля)
|
|
|
|
|
|
|
|
|
|
## подмрежи
|
|
|
|
|
|
|
|
|
|
* management (ipv4 only)
|
|
|
|
|
* wired (ipv4 & ipv6)
|
|
|
|
|
* wireless (ipv4 & ipv6)
|
|
|
|
|
* video (ipv4 only)
|
|
|
|
|
* overflow (ipv4 only)
|
|
|
|
|
* Разделени по роли
|
|
|
|
|
|
|
|
|
|
## Потребителски мрежи
|
|
|
|
|
|
|
|
|
|
* странни ARP филтрирания
|
|
|
|
|
* ... които ще бъдат разказани в wifi частта
|
|
|
|
|
* филтриран порт 25
|
|
|
|
|
* не си заслужава усилието
|
|
|
|
|
* Split DNS
|
|
|
|
|
* имахме за stream.openfest.org, да не ходят хората навън за stream-а
|
|
|
|
|
* тая година не се занимавахме (някой смени bind-а на unbound :) )
|
|
|
|
|
|
|
|
|
|
## Прост зонален firewall
|
|
|
|
|
|
|
|
|
|
* Никой освен сървъра не може да си говори с не-потребителските vlan-и
|
|
|
|
|
|
2016-11-05 22:47:05 +02:00
|
|
|
|
## някакви статистики
|
|
|
|
|
|
2016-11-06 10:26:52 +02:00
|
|
|
|
* трафик за един ден
|
2016-11-05 22:47:05 +02:00
|
|
|
|
* uplink RX bytes:166625775439 (155.1 GiB) TX bytes:111672002107 (104.0 GiB)
|
|
|
|
|
* wired vlan RX bytes:49287123 (47.0 MiB) TX bytes:110877063 (105.7 MiB)
|
|
|
|
|
* wireless vlan RX bytes:9683344153 (9.0 GiB) TX bytes:132029407460 (122.9 GiB)
|
|
|
|
|
* video vlan RX bytes:152016225220 (141.5 GiB) TX bytes:90711376574 (84.4 GiB)
|
|
|
|
|
* видени уникални mac адреса за събота
|
|
|
|
|
* wired vlan - 8 !
|
|
|
|
|
* wireless vlan - 485
|
|
|
|
|
* Извод - не е ясно защо даваме портове на хората :)
|
2016-11-06 11:01:37 +02:00
|
|
|
|
* километър и малко кабел
|
|
|
|
|
* никаква оптика тая година :)
|
2016-11-05 22:18:25 +02:00
|
|
|
|
|
|
|
|
|
# wireless
|
|
|
|
|
|
2016-11-06 10:26:52 +02:00
|
|
|
|
## Проблемът
|
|
|
|
|
|
|
|
|
|
* Да се покрие с Wi-Fi цялата сграда
|
|
|
|
|
* Да се оптимизира използването на радио спектъра, който имаме на разположение
|
|
|
|
|
|
|
|
|
|
## Хардуерът
|
|
|
|
|
|
|
|
|
|
* 4 x Linksys WRT1900ACS
|
|
|
|
|
* 2 x D-Link DAP-2695
|
|
|
|
|
* 7 x TP-Link Archer C5/C7
|
|
|
|
|
* Резерви: 3 x TP-Link WDR4300
|
|
|
|
|
|
|
|
|
|
13 работещи точки за достъп, общо 26 BSS-а.
|
|
|
|
|
|
2016-11-06 11:01:37 +02:00
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![Железария](wifihw.jpg)
|
|
|
|
|
|
2016-11-06 10:26:52 +02:00
|
|
|
|
## Софтуерът
|
|
|
|
|
|
|
|
|
|
* LEDE на Linksys и D-Link устройствата
|
|
|
|
|
* OpenWrt с бекпортове на TP-Link устройствата (https://github.com/OpenFest/openwrt)
|
|
|
|
|
|
|
|
|
|
## Снабдяване
|
|
|
|
|
|
|
|
|
|
Благодарим на:
|
|
|
|
|
|
|
|
|
|
* Мариян (hackman)
|
|
|
|
|
* Васил Колев
|
|
|
|
|
* Стефан Леков
|
|
|
|
|
* neter
|
|
|
|
|
* Securax
|
|
|
|
|
* init Lab
|
|
|
|
|
* rattus
|
|
|
|
|
|
|
|
|
|
## Разпределение
|
|
|
|
|
|
|
|
|
|
![Разпределение](wifi.png)
|
|
|
|
|
|
2016-11-06 11:01:37 +02:00
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![Accident waiting to happen](ladder.jpg)
|
|
|
|
|
|
|
|
|
|
|
2016-11-06 10:26:52 +02:00
|
|
|
|
# Оптимизации
|
|
|
|
|
|
|
|
|
|
## Ограничаване на broadcast и multicast трафика
|
|
|
|
|
|
|
|
|
|
Филтриране при точките за достъп:
|
|
|
|
|
|
|
|
|
|
/usr/sbin/ebtables -A FORWARD -i wlan+ -o wlan+ -j DROP
|
|
|
|
|
/usr/sbin/ebtables -A FORWARD -i wlan+ -s 00:1e:0b:d9:bb:6a -j DROP
|
|
|
|
|
/usr/sbin/ebtables -A FORWARD -i eth+ -o wlan+ -s ! 00:1e:0b:d9:bb:6a -j DROP
|
|
|
|
|
|
|
|
|
|
Proxy-arp, proxy-nd и намаляване на продължителността на state-овете на рутера.
|
|
|
|
|
|
|
|
|
|
## Ограничаване на base rate-овете
|
|
|
|
|
|
|
|
|
|
* Към мрежата не можеш да се свържеш на под 54Mbs. (вж. https://petko.me/openfest/wifi/2014/11/09/openfest-wifi.html)
|
|
|
|
|
* Имахме максимум 6 802.11g устройства.
|
|
|
|
|
* Надявам се догодина airtime fairness пачовете да се събмитнати в LEDE/OpenWrt и да няма нужда да правим тази оптимизация.
|
|
|
|
|
|
|
|
|
|
## Увеличаване на beacon interval-ът
|
|
|
|
|
|
2016-11-06 11:01:37 +02:00
|
|
|
|
* На BSS-ите на 2,4 ГХц интервалът е 2,5 пъти по-висок, от стандартното (т.е. 250 kns).
|
2016-11-06 10:26:52 +02:00
|
|
|
|
|
|
|
|
|
## Ограничаване на мощността на излъчване
|
|
|
|
|
|
|
|
|
|
* Всички 2,4 ГХц радиа излъчват с мощност 3-5 dBm (2-3mW) (!)
|
|
|
|
|
* Всички 5 ГХц радиа излъчват с мощност 19-21 dBm (80-125mW)
|
|
|
|
|
|
2016-11-06 11:01:37 +02:00
|
|
|
|
* Надявам се догодина minstrel-blues да е събмитнат в LEDE/OpenWrt и да няма нужда от тази оптимизация.
|
2016-11-06 10:26:52 +02:00
|
|
|
|
|
|
|
|
|
# Демо
|
|
|
|
|
|
|
|
|
|
# Картинки
|
|
|
|
|
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![Трафик](traffic.png)
|
|
|
|
|
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
![Станции](clients.png)
|
|
|
|
|
|
|
|
|
|
## Какво нямахме време да направим:
|
|
|
|
|
|
|
|
|
|
https://github.com/OpenFest/openfest-network/milestone/6?closed=1
|
|
|
|
|
|
2016-11-05 22:18:25 +02:00
|
|
|
|
# Monitoring
|
|
|
|
|
|
2016-11-06 09:46:42 +02:00
|
|
|
|
|
|
|
|
|
## From
|
|
|
|
|
![initial](initial.png)
|
|
|
|
|
|
|
|
|
|
## Trough
|
|
|
|
|
![step1](red.png)
|
|
|
|
|
|
|
|
|
|
## Finaly
|
|
|
|
|
![finally](green.png)
|
|
|
|
|
|
|
|
|
|
## Statistics
|
|
|
|
|
* 40 - active Hosts
|
|
|
|
|
* 300+ - Active Services
|
|
|
|
|
* 6 - People in NOC
|
|
|
|
|
* 1 kilogram - waffles
|
|
|
|
|
* 10 - devices dedicated for monitoring
|
|
|
|
|
* 30 - days of work
|
|
|
|
|
|
|
|
|
|
## What we do
|
|
|
|
|
![monitor](monitor-all-the-things.jpg)
|
|
|
|
|
|
|
|
|
|
## And specificaly
|
|
|
|
|
* Switches
|
|
|
|
|
* Routers
|
|
|
|
|
* Wifi
|
|
|
|
|
* Stats
|
|
|
|
|
|
|
|
|
|
## Some stats
|
|
|
|
|
* Maximum traffic - 300
|
|
|
|
|
* Number of active clients - 300
|
|
|
|
|
* Unique clients - 872
|
|
|
|
|
* simultaneous sessions - 13.28K
|
2016-11-05 22:18:25 +02:00
|
|
|
|
|
|
|
|
|
# Ток
|
|
|
|
|
|
|
|
|
|
# Видео
|
|
|
|
|
|
|
|
|
|
##
|
|
|
|
|
### Благодарим за вниманието!
|