главная|main page

состояние|status

блог|blog

файлы|files

программы|software

summaryrefslogtreecommitdiff
path: root/drafts/-80211r----openwrt.md
blob: d11f3389771cfae9024aca6d755cbbf64c8a4bc6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
Настройка 802.11r (быстрого перехода/роуминга) в OpenWrt.

Эта заметка про настройку быстрого Wi-Fi роуминга [1],
то есть 802.11r, в OpenWrt. Здесь также будет описано,
как получать доступ в локальную сеть через Ethernet-порт
нашего ретранслятора.

# Требования
- Два устройства с OpenWrt с поддержкой Wi-Fi;
- Базовые знания администрирования Unix-систем (SSH, vi...)
- Терпение

# Настраиваем маршрутизатор
Для начала, подключите его к Интернету, так как нам понадобятся
пакеты `relayd` и `luci-proto-relay` на ретрансляторе.

Будем считать, что вы настроили свою страну и пароль для Wi-Fi,
однако нам всё равно надо внести следующие правки в файл
`/etc/config/wireless`:
```
...
config wifi-iface '...'
	...
	option ieee80211r '1'
	option nasid '123456' // Идентификатор данной точки доступа, уникален
	option mobility_domain 'abcd' // Любое шестнадцатеричное число,
	                              // состоящее из четырёх цифр. Если вдруг
				      // решите сделать роуминг с KeeneticOS,
				      // то на вашем Keenetic вводите
				      // это число с основанием 10.
	option ft_over_ds '1' // Не проверял без этого параметра
	option ft_psk_generate_local '1'
```
Также не забудьте внести правки в другие `wifi-iface`, если имеются
(и ретранслятор/ы поддерживают одинаковые протоколы).

# Настраиваем ретранслятор
Для того, чтобы этот ретранслятор раздавал по Wi-Fi подключение к Интернету,
нам сперва надо подключить ретранслятор к главному маршрутизатору в качестве
клиента. Подразумевается, что они соединены проводом (можно подключить его по
радио, это удобнее делать через LuCI).

Сначала, вносим следующие правки в /etc/config/network:
- Меняем IP-адрес нашего ретранслятора:
```
...
config interface 'lan'
	...
	option ipaddr '192.168.2.1' // Здесь ставим любую подсеть, отличную от
	                            // подсети главного маршрутизатора
```
- Правим интерфейс `wan`:
```
config interface 'wan'
	option proto 'static'
	option ipaddr '192.168.1.20' // IP-адрес в подсети главного
	                             // маршрутизатора
	option netmask '255.255.255.0'
	option gateway '192.168.1.1' // IP-адрес главного маршрутизатора
	list dns '192.168.1.1' // DNS-сервер/ы
```
- Потом, удаляем все зоны, кроме `lan` в `/etc/config/firewall` и вносим следующие
изменения:
```
config zone
	option name 'lan'
	...
	list network 'wan' // Сделать перенаправление пакетов между
	                   // интерфейсами прозрачным
```
- Правим `/etc/config/dhcp`:
```
config dhcp 'lan'
	option interface 'lan'
	option ignore '1'
```

Теперь, установите вышеупомянутые пакеты, зайдя в меню
`System -> Software` в LuCI или выполнив следующую команду
через оболочку (не работает в выпусках после 24.10 из-за смены
пакетного менеджера разработчиками):
`opkg install relayd luci-proto-relay`

После установки пакета, создайте интерфейс `bridge` в `/etc/config/network`:
```
config interface 'bridge'
	option proto 'relay'
	option ipaddr '192.168.1.20' // IP-адрес, который вы выбрали ранее
	list network 'lan'
	list network 'wan'
```

Сейчас скопируйте настройки Wi-Fi-сети с главного маршрутизатора на ретранслятор,
убедившись в соответствии с названиями Wi-Fi-интерфейсов обоих устройств.

---
[1] Многие производители маршрутизаторов называют это «Mesh»,
что на самом деле является обманом. Я не понял, что
такое настоящий mesh: <https://openwrt.org/docs/guide-user/network/wifi/mesh/mesh11sd>

Метки: openwrt, сети, wi-fi, 802.11