This shows you the differences between two versions of the page.
howto:general:wireless:virtual_ap [2015/05/22 07:56] admin |
howto:general:wireless:virtual_ap [2018/05/24 09:05] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Virtual AP ====== | ||
- | |||
- | Even on one single physical wireless chip, it is possible to broadcast multiple wireless SSID's. | ||
- | In that case we are talking about //'__V__irtual __A__ccess-__P__oints'// or //'VAP's'//. | ||
- | |||
- | A VAP is basically a logical //'wifi-interface'// which points to an existing //'wifi-device'// (physical interface). | ||
- | Therefore it can be treated as any other interface as well. It can apply own encryption-settings, filter- and firewall-rules, can be put into a bridge and so on. | ||
- | |||
- | These instructions show how to add a new virtual wireless interface to the routers configuration. | ||
- | |||
- | |||
- | ===== Overview ===== | ||
- | |||
- | ==== Level of difficulty === | ||
- | |||
- | Medium | ||
- | |||
- | |||
- | |||
- | ==== Related topics ==== | ||
- | |||
- | * [[documentation:configuration:uci|UCI]] | ||
- | * [[documentation:configuration:config_files:config_wireless|/etc/config/wireless]] | ||
- | | ||
- | ===== Instructions ===== | ||
- | |||
- | ==== GUI ==== | ||
- | |||
- | Not available, yet | ||
- | |||
- | ==== UCI Config System ==== | ||
- | |||
- | * **Define virtual wireless interface** | ||
- | __Note:__ the device 'wl0' must be replaced by the device listed in your 'wifi-device' section! ((details see 'UCI config files' section)) | ||
- | |||
- | <code> | ||
- | uci add wireless wifi-iface | ||
- | uci set wireless.@wifi-iface[-1].device=wl0 | ||
- | uci set wireless.@wifi-iface[-1].mode=ap | ||
- | uci set wireless.@wifi-iface[-1].network=guest | ||
- | uci set wireless.@wifi-iface[-1].ssid=guest-wlan | ||
- | uci set wireless.@wifi-iface[-1].encryption=mixed-psk | ||
- | uci set wireless.@wifi-iface[-1].key=guest-access | ||
- | </code> | ||
- | |||
- | * **Store changes** | ||
- | <code> | ||
- | uci commit wireless | ||
- | </code> | ||
- | |||
- | * **Apply changes** | ||
- | <code> | ||
- | wifi | ||
- | </code> | ||
- | |||
- | ==== UCI config files (native) ==== | ||
- | |||
- | Configuration file: [[documentation:configuration:config_files:config_wireless|/etc/config/config_wireless]] | ||
- | |||
- | As stated before, a vap consists of a new 'wifi-interface' section in the wireless configuration file, which points to an existing //'wifi-device'//. | ||
- | So the first step is to look for the wireless-device which should broadcast the new SSID. | ||
- | |||
- | In our example, the device we are looking for is '**wl0**': | ||
- | <code> | ||
- | config wifi-device 'wl0' | ||
- | option device 'wl0' | ||
- | option type 'brcm' | ||
- | option country 'CH' | ||
- | option hwmode '11g' | ||
- | option htmode 'HT20' | ||
- | option channel '0' | ||
- | option disabled '0' | ||
- | </code> | ||
- | |||
- | * **Add wireless-interface** | ||
- | |||
- | Now we can add the new wireless-interface with the //'device'//-option set to our physical device. | ||
- | <code> | ||
- | config wifi-iface | ||
- | option device 'wl0' | ||
- | option mode 'ap' | ||
- | option network 'guest' | ||
- | option ssid 'guest-wlan' | ||
- | option encryption 'mixed-psk' | ||
- | option key 'guest-access' | ||
- | </code> | ||
- | |||
- | * **Apply changes** | ||
- | |||
- | To get the new setup working, the config needs to be reloaded: | ||
- | |||
- | <code> | ||
- | wifi | ||
- | </code> | ||
- | |||
- | As mentioned, the VAP results in an independent interface to the routers operating system. | ||
- | Generally the new interface name is the physical device, followed by a continuos number (wl0, wl0-1, wl0-2, ...) ((the section order in /etc/config/wireless is significant)). | ||
- | |||
- | <code> | ||
- | wl0-1 Link encap:Ethernet HWaddr CE:E1:D5:9F:12:DF | ||
- | UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 | ||
- | RX packets:0 errors:0 dropped:3 overruns:0 frame:144036 | ||
- | TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 | ||
- | collisions:0 txqueuelen:1000 | ||
- | RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) | ||
- | |||
- | </code> | ||
- | |||
- | ===== Troubleshooting ===== | ||
- | |||
- | Not available, yet | ||
- | |||
- | |||
- | |||