Table of Contents

Маршрутизированный Клиент

В конфигурации по умолчанию OpenWrt создает мост между беспроводной и локальной сетями устройства. Большинство беспроводных драйверов не поддерживают коммутацию в режиме клиента (см. Bridged Client Mode Issues), поэтому трафик между локальной сетью и беспроводным клиентом обязательно должен быть маршрутизирован.

Использование МАСКАРАДИНГА

Если у вас нет доступа администратора (например, возможности настройки записей статических маршрутов) к целевой Точке Доступа (AP), в этом случае локальная сеть клиентской подсети (Client Subnet) должна быть замаскирована, чтобы обеспечить правильную маршрутизацию.

Когда конфигурация целевой Точки Доступа будет возможна, нужно сначала настроить конфигурацию маскировки, приведенную ниже, а затем, чтобы полностью закончить настройку маршрутизированного клиента, выполнить шаги по маршрутизации из раздела Использование маршрутизации.

Masqueraded

Ниже описан процесс включения радио интерфейса в режиме клиента и повторное использование существующих правил брандмауэра интерфейса WAN и его NAT для подключения к целевой сети (AP Subnet).

Конфигурация

Предполагается, что изменения будут вноситься в конфигурационные файлы OpenWRT, настроенные по умолчанию, такие как:

Перед тем как вносить какую-либо фактическую конфигурацию, интерфейс Wi-Fi должен быть включен и переведен в режим станции (Station) для того, чтобы иметь возможность сканировать сети в окрестности:

uci del wireless.@wifi-device[0].disabled
uci del wireless.@wifi-iface[0].network
uci set wireless.@wifi-iface[0].mode=sta
uci commit wireless
wifi

Теперь можно выполнить команду iwlist scan для получения списка сетей в радиусе действия (информация, необходимая для последующей настройки выделена):

root@OpenWrt:~# iwlist scan wlan0 Scan completed : Cell 01 - Address: 00:1D:19:0E:03:8F ESSID:“Vodafone-0E0301” Mode:Managed Channel:9 Quality:3/5 Signal level:-69 dBm Noise level:-92 dBm IE: IEEE 802.11i/WPA2 Version 1 Group Cipher : TKIP Pairwise Ciphers (2) : TKIP CCMP Authentication Suites (1) : PSK Preauthentication Supported IE: WPA Version 1 Group Cipher : TKIP Pairwise Ciphers (2) : TKIP CCMP Authentication Suites (1) : PSK Encryption key:on Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 6 Mb/s; 9 Mb/s 11 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s 48 Mb/s; 54 Mb/s
Если после команды сканирования вы увидели сообщение типа Device or resource busy, то это означает что экземпляр процесса wpa_supplicant блокирует интерфейс. В этом случае необходимо убить запущенный процесс и повторить сканирование:
killall -9 wpa_supplicant
iwlist scan

Шаг 1: Изменение интерфейса WAN

Редактируем /etc/config/network и изменяем интерфейс WAN путем редактирования существующей опции ifname:

config 'interface' 'wan' option 'proto' 'dhcp'

Обратите внимание, что сетевой раздел wan не должен содержать опцию ifname.

Шаг 2: Изменение существующей беспроводной сети

Предположим, что мы хотим подключиться к сети под названием “Vodafone-0E0301”, и предыдущий результат сканирования выявил следующую информацию:


В конфигурационном файле /etc/config/wireless, найдите существующий раздел wifi-iface и измените в нем опцию network, чтобы она указывала на wan. Укажите опции mode значение sta (Station) и измените SSID и параметры шифрования так, чтобы они соответствовали целевой сети. Канал не имеет особого значения.

config 'wifi-device' 'wlan0' option 'type' 'broadcom' option 'channel' '9' config 'wifi-iface' option 'device' 'wlan0' option 'network' 'wan' option 'mode' 'sta' option 'ssid' 'Vodafone-0E0301' option 'encryption' 'psk2' option 'key' 'secret-key'

Применение изменений

Перенастройте беспроводную сеть командами:

ifup wan
wifi
Если целевая сеть использует адреса подсети 192.168.1.0/24, необходимо изменить IP-адрес локальной сети по умолчанию в другой подсети, например 192.168.2.1 .
Вы можете определить, назначенный WAN адрес с помощью следующей команды:
. /lib/functions/network.sh; network_get_ipaddr IP_WAN wan; echo $IP_WAN
192.168.1.30

На данном этапе, настройка клиента с маскарадом должна быть закончена. При желании вы можете присоединить WAN порт к коммутатору локальной сети, для того, чтобы иметь возможность использовать все порты локальной сети в качестве клиентов локальной сети. Обратите внимание, что следующая конфигурация работает для маршрутизаторов Atheros, где порт WAN обычно eth1, но вы всегда можете найти правильное имя порта с помощью команды Ifconfig.

vi /etc/config/network
config interface 'lan' option ifname 'eth0 eth1' option type 'bridge' option proto 'static'

Использование маршрутизации

В отличие от маскарадинга, полностью маршрутизированная установка позволяет получить доступ из хостов сети точки доступа к хостам в сети клиента с помощью IP-адреса WAN клиентского маршрутизатора, выступающего в качестве шлюза для сети клиента извне.

Этот вид топологии сети не представляется возможным, потому что клиент делает преобразование сетевых адресов (NAT), и в результате адреса позади NAT не доступны извне, если не приняты дополнительные меры, такие как настройка порта переадресации.

Routed network topology

TВ этом разделе описывается процесс изменения конфигурации брандмауэра, чтобы разрешить входящий трафик WAN и отключить маскировку в соответствующей зоне.


Конфигурации клиента с полной маршрутизацией основана на конфигурации маскарадинга и предполагает уже рабочую установку клиента.
Конфигурацию маршрутизированного клиента можно продолжить, только если у вас есть возможность перенастройки удаленной точки доступа!

Конфигурация

В дополнение к файлам из установки замаскированного клиента, соответствуют следующие конфигурационные файлы:

Шаг 1: Изменение конфигурации фаервола

Отредактируйте файл /etc/config/firewall и найдите место определения зоны WAN. Отключите маскировку и установите политику ACCEPT для входящего трафика:

config 'zone' option 'name' 'wan' option 'input' 'ACCEPT' option 'output' 'ACCEPT' option 'forward' 'REJECT' option 'mtu_fix' '1' option 'masq' '0'

Затем добавьте новый раздел forwarding, разрешающий поток трафика от WAN к LAN:

config 'forwarding' option 'src' 'wan' option 'dest' 'lan'

Шаг 2: Настройка удаленной точки доступа

Для того, чтобы локальная подсеть LAN была достижима для клиентов в подсети точки доступа, необходимо настроить на точке доступа статический маршрут, указывающий на нашу сеть LAN. Настройка статических маршрутов на каждой точке доступа своя, поэтому при возникновении сомнений, лучше всего обратиться к руководству по эксплуатации конкретной точки доступа.

Так как статическим маршрутам нужен статический шлюз, работающий должным образом, IP-адрес WAN в режиме беспроводного клиента должен быть обязательно закреплен. Есть два возможных способа достижения этой цели:

Если используется подход с фиксированным IP, тогда секция WAN в конфигурационном файле /etc/config/network, отвечающая за протокола DHCP, должна быть заменена на static:

config 'interface' 'wan' option 'proto' 'static' option 'ipaddr' '192.168.1.30' option 'netmask' '255.255.255.0'


Убедитесь, что диапазон адресов не пересекается с сетью LAN.
Вы должны изменить адрес локальной сети, если он находится в той же подсети, например, на 192.168.2.1

После фиксации адреса WAN, статический маршрут должен быть добавлен к точке доступа со следующей информацией:

Вам также может понадобиться установить политику 'ACCEPT' для перенаправляемого (forwarded) трафика для зоны локальной сети (LAN) брандмауэра точки доступа, для того, чтобы хосты в сети клиента взаимодействовали с узлами сети (кроме непосредственно самого маршрутизатора) Точки доступа. Например, (согласно схеме) для Client Host 1 для связи с LAN Host 1.

Применение изменений

Перенастройте беспроводную сеть:

ifup wan
wifi

Перезапустите фаервол:

/etc/init.d/firewall restart