Настраиваем Ubiquiti Wi-Fi и Cisco (Гостевой DHCP и VLANs)

от автора

image

В этой статье описан один из способов настройки гостевых и корпоративных беспроводных сетей используя решения Enterprise Wi-Fi Ubiquiti UniFi и Cisco Integrated Services Routers

Рецепт

Создать корпоративную SSID сеть
Создать гостевую SSID сеть
Создать VLAN сети на одном физическом порте
Настроить проброс DHCP
Изолировать гостевой VLAN
Выпускать клиентов под разными статическими IP

Ингредиенты

Роутер: Router Cisco 2901
ОС для контроллера: Ubuntu server 12.04
ПО: Ubiquiti UniFi Controller 4.6.6
Свитч: Ubiquiti TOUGHSwitch PoE Pro
Точки: Ubiquiti UniFi AP LR

Топология

image

Готовим Cisco

Создадим базу VLANов
VLAN id вы можете использовать на свое усмотрение

cisco#vlan database cisco(vlan)#vlan 1 VLAN 1 added:     Name: VLAN0001 cisco(vlan)#vlan 2 VLAN 2 added:     Name: VLAN0002 cisco(vlan)#vlan 3 VLAN 3 added:     Name: VLAN0003 cisco(vlan)#apply APPLY completed. cisco(vlan)#exit cisco#wr 

Настраиваем и создаем VLAN-ы
Здесь мы сразу прибиваем NAT для наших клиентов коммандой ip nat inside.

cisco#conf t cisco(config)#interface vlan 1 cisco(config-if)#ip address 172.16.1.1 255.255.255.0 cisco(config-if)#ip nat inside cisco(config-if)#ip virtual-reassembly in cisco(config-if)#ip tcp adjust-mss 1452 cisco(config-if)#exit cisco(config)#interface vlan 2 cisco(config-if)#ip address 172.15.1.1 255.255.255.0 cisco(config-if)#ip nat inside cisco(config-if)#ip virtual-reassembly in cisco(config-if)#ip tcp adjust-mss 1452 cisco(config-if)#exit cisco(config)#interface vlan 3 cisco(config-if)#ip address 172.17.1.1 255.255.255.0 cisco(config-if)#ip nat inside cisco(config-if)#ip virtual-reassembly in cisco(config-if)#ip tcp adjust-mss 1452 cisco(config-if)#exit cisco(config)#exit cisco#wr 

Настраиваем и создаем DHCP
172.16.1.1/24 Мы будем использовать для менеджмент сети, а именно — там наши точки будут получать IP и стучаться к контроллеру. 172.16.1.1/24 Мы будет раздавать гостям, а сеть 172.16.1.1/24 отдадим корпоративным устройствам. В примере используются DNS сервера Yandex: 77.88.8.8 Google: 8.8.4.4. Параметр lease указывает на сколько дней мы выдаем IP клиенту.

cisco#conf t cisco(config)#ip dhcp pool Vlan1 cisco(dhcp-config)#import all cisco(dhcp-config)#network 172.16.1.0 255.255.255.0 cisco(dhcp-config)#default-router 172.16.1.1 cisco(dhcp-config)#dns-server 77.88.8.8 8.8.4.4 cisco(dhcp-config)#lease 8 cisco(dhcp-config)#exit cisco(config)#ip dhcp pool Vlan2 cisco(dhcp-config)#import all cisco(dhcp-config)#network 172.15.1.0 255.255.255.0 cisco(dhcp-config)#default-router 172.15.1.1 cisco(dhcp-config)#dns-server 77.88.8.8 8.8.4.4 cisco(dhcp-config)#lease 1 cisco(dhcp-config)#exit cisco(config)#ip dhcp pool Vlan3 cisco(dhcp-config)#import all cisco(dhcp-config)#network 172.17.1.0 255.255.255.0 cisco(dhcp-config)#default-router 172.17.1.1 cisco(dhcp-config)#dns-server 77.88.8.8 8.8.4.4 cisco(dhcp-config)#lease 1 cisco(dhcp-config)#exit cisco(config)#exit cisco#wr 

Помогаем DHCP серверу
Для корректной раздачи IP адресов желательно явно указать ip helper-address — DHCP сервер на всех VLANах.

cisco#conf t cisco(config)#interface vlan 1 cisco(config-if)#ip helper-address 172.16.1.1 cisco(config-if)#exit cisco(config)#interface vlan 2 cisco(config-if)#ip helper-address 172.15.1.1 cisco(config-if)#exit cisco(config)#interface vlan 3 cisco(config-if)#ip helper-address 172.17.1.1 cisco(config-if)#exit cisco(config)#exit cisco#wr 

Исключим выдачу служебных IP адресов

cisco#conf t cisco(config)#ip dhcp excluded-address 172.15.1.1 172.15.1.3 cisco(config)#ip dhcp excluded-address 172.16.1.1 172.16.1.3 cisco(config)#ip dhcp excluded-address 172.17.1.1 172.17.1.3 cisco(config)#exit cisco#wr 

Настраиваем интерфейсы
После создания VLAN и настройки DHCP, нам необходимо настроить порт на маршрутизаторе который будет раздавать эти сети особым образом. В нашем примере мы зададим порту GigabitEthernet 0/0 основной VLAN 1 и разрешим дергать VLAN 2 и VLAN 2.

В примере используется интерфейс GigabitEthernet 0/0, предполагается что у вас имеется еще как минимум 2 порта — один для доступа в интернет GigabitEthernet 0/1 и один порт для вашей корпоративной проводной сети, например GigabitEthernet 0/2.

cisco#conf t cisco(config)#GigabitEthernet 0/0 cisco(config-if)#switchport trunk encapsulation dot1q cisco(config-if)#switchport mode trunk cisco(config-if)#switchport trunk allowed vlan 1,2,3 cisco(config-if)#switchport trunk native vlan 1 cisco(config-if)#no shutdown cisco(config-if)#exit cisco(config)#exit cisco#wr 

Теперь, при подключении порту GigabitEthernet 0/0 наш контроллер и точки будут получать сеть 172.16.1.0/24, а VLAN2 и VLAN3 будут использоваться по требованию.

Закручиваем гайки
Теперь, когда мы настроили основной порт для всех сетей, пора бы запретить доступ гостевой сети (VLAN2) ходить в наши в соседние сети.
В данном примере на GigabitEthernet 0/2 висит проводная корпоративная сеть 192.168.0.0 255.255.255.0

cisco#conf t cisco(config)#access-list 110 deny ip 172.15.1.0 0.0.0.255 192.168.0.0 0.0.0.255 cisco(config)#access-list 110 deny ip 172.15.1.0 0.0.0.255 172.16.1.0 0.0.0.255 cisco(config)#access-list 110 deny ip 172.15.1.0 0.0.0.255 172.17.1.0 0.0.0.255 cisco(config)#access-list 110 permit ip any any cisco(config)#exit cisco#wr 

Прибиваем этот access-list 110 к нашему VLAN2

cisco#conf t cisco(config)#interface vlan 2 cisco(config-if)#ip access-group 110 in cisco(config-if)#exit cisco(config)# cisco#wr 

Маршрутизируем наших клиентов разными внешними IP
Для того что бы указать каким клиентам ходить через какой внешний IP я использую пулы
Представим что у нас есть 3 внешних IP адреса выданные нашим ISP: 100.100.100.101, 100.100.100.102, 100.100.100.103 с одним шлюзом 100.100.100.1

Пример конфигурации

interface GigabitEthernet0/0  switchport trunk native vlan 2  switchport mode trunk  no ip address ! interface GigabitEthernet0/1  ip address 100.100.100.101 255.255.255.0  ip nbar protocol-discovery  ip nat outside  ip virtual-reassembly in  duplex auto  speed auto ! interface GigabitEthernet0/2  ip address 192.168.0.0 255.255.255.0  ip access-group 109 in  ip nat inside  ip virtual-reassembly in  ip tcp adjust-mss 1452  duplex auto  speed auto ! ip route 0.0.0.0 0.0.0.0 100.100.100.1 ! access-list 109 permit ip 192.168.0.0 0.0.0.255 any access-list 110 deny ip 172.15.1.0 0.0.0.255 192.168.0.0 0.0.0.255 access-list 110 deny ip 172.15.1.0 0.0.0.255 172.16.1.0 0.0.0.255 access-list 110 deny ip 172.15.1.0 0.0.0.255 172.17.1.0 0.0.0.25 access-list 110 permit ip any any 

Итак, мы хотим что бы клиенты из сети 192.168.0.0 ходили в мир через IP 100.100.100.101, клиенты из гостевой беспроводной сети 172.15.1.0 ходили в мир через IP 100.100.100.102, а клиенты из корпоративной беспроводной сети через IP 100.100.100.103

Давайте создадим дополнительный access-list 108 для клиентов из корпоративной беспроводной сети

cisco#conf t cisco(config)#access-list 108 permit ip 172.17.1.0 0.0.0.255 any cisco(config)#exit cisco#wr 

Прикрутим access-list 108 к VLAN3

cisco#conf t cisco(config)#interface vlan 3 cisco(config-if)#ip access-group 108 in cisco(config-if)#exit cisco(config)# cisco#wr 

Предполагается, что вы уже самостоятельно создали access-list 109 когда настраивали проводную сеть
Итак, у нас есть 3 access-list, поехали.

Создаем пулы (netmask должна строго соответствовать той — которую выдал ISP)

cisco#conf t ip nat pool OFFICELAN 100.100.100.101 100.100.100.101 netmask 255.255.255.0 ip nat pool WIFIGUEST 100.100.100.102 100.100.100.102 netmask 255.255.255.0 ip nat pool WIFICORP 100.100.100.103 100.100.100.103 netmask 255.255.255.0 

Прибиваем access-list к pool

cisco#conf t cisco(config)#ip nat inside source list 109 pool OFFICELAN overload cisco(config)#ip nat inside source list 110 pool WIFIGUEST overload cisco(config)#ip nat inside source list 108 pool WIFICORP overload cisco(config)#ip nat inside source route-map nonat interface GigabitEthernet0/1 overload cisco(config)#exit cisco#wr 

На этом этапе настройка роутера Cisco окончена.

Готовим контроллер

Итак, теперь мы берем сервер под контроллер, устанавливаем туда ПО Ubiquiti UniFi Controller 4.6.6, процесс установки я описывать не буду, ОС по вашему выбору, я установил Ubuntu server 12.04 и присвоил контроллеру IP 172.16.1.3

Базовая настройка
Открываем веб-интерфейс контроллера 172.16.1.3:8443

1. Проходим в Settings -> Site
Ставим галку — Automatically upgrade AP firmware, а остальное по вкусу:
image

2. Проходим в Settings -> Controller
Прописываем контроллеру его IP адрес (это так называемый inform ip)
Ставим галку — Make controller discoverable on L2 Network
image

3. Проходим в Settings -> Networks
Выбираем дефолтную сеть, редактируем, указываем например нашу корпоративную — 192.168.0.1/24
image

3.1 Создаем VLAN2
Create New Network -> VLAN ONLY
Ставим галку Enable DHCP Guarding и указываем наш DHCP сервер 172.15.1.1 для VLAN2
image

3.2 Создаем VLAN3 — (все тоже самое)
Create New Network -> VLAN ONLY
Ставим галку Enable DHCP Guarding и указываем наш DHCP сервер 172.17.1.1 для VLAN3
image

Прикручиваем VLANы к SSID
Мы подошли к финальному моменту хитрости — теперь мы прикрутим наши VLAN2, VLAN3 к гостевой и корпоративной сети

Проходим в Settings -> Wireless Networks
Создадим гостевую сеть c параметрами:
Name/SSID: Guest
Security: WPA-PERSONAL
Security Key: пароль
Advanced Options ->
VLAN — Use VLAN ID 2
WPA Mode: WPA2 Only
Encryption: AES/CCMP Only
Usergroup: Default

image

Создадим корпоративную сеть c параметрами:
Name/SSID: Corp
Security: WPA-PERSONAL
Security Key: пароль
Advanced Options ->
VLAN — Use VLAN ID 3
WPA Mode: WPA2 Only
Encryption: AES/CCMP Only
Usergroup: Default

Итоги
На этом базовая настройка Ubiquiti UniFi Controller закончена, ваши точки доступа теперь получают IP адреса из сети 172.16.1.1/24, теперь клиенты которые подключаются к беспроводной сети Guest получают IP адреса 172.15.1.1/24 и выходят в интернет под внешним IP 100.100.100.102, а клиенты которые подключаются к сети Corp, выходят в интернет под внешним IP 100.100.100.103 и забирают 172.17.1.1/24. Ваши офисные сотрудники выходят в интернет под внешним IP 100.100.100.101. Мы так же запретили доступ гостям во все приватные сети кроме своей. Вы так же можете использовать гостевую сеть без пароля — это необязательное условие. Данная топология может варьироваться в зависимости от ваших потребностей, например можно убрать избыточную сеть 172.16.1.1/24… Всем хороших выходных!

P.S Если вы найдете орфографические ошибки — пожалуйста напишите мне в ЛС

ссылка на оригинал статьи http://habrahabr.ru/post/263431/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *