Hi Lev, There are many ways to do this; I have APs running FreeBSD and roaming works kind of OK without any additional ports being installed.
The trick is to have both SSIDs (WiFi network name) the same and the same security settings on each but run them on non-overlapping channels. Each AP will have its own MAC address thus, by default, driving each AP to have a different BSSID, which is what you want. The client (supplicant) will choose which BBSID to connect to for the selected WiFi Network name based on single strength. Different supplicants (android versus apple) behave differently but most will usually hold onto the current BSSID until a lower strength threshold is past and then it rescans for a stronger BSSID advertising the selected SSID. The "kind of" bit is that the decision to roam to a new BSSID is made by the client. The client maybe trying to prevent roaming to preserve battery life, but can on overridden in most cases by an app or setting, ( e.g. enabling "Always allow WLAN Roam Scans" under Developer Options on Android improves the behaviour, and can be monitored by consulting "Wifi Analyzer" from Google Play). This switch over may well cause a TCP Reset to be issued under certain circumstances for active connections. The Cisco Wireless tech allows spoofing of BSSIDs and encapsulated backhaul of data to a single handoff point to a router, etc. to provide a more seamless experience. It also allows roaming of both Layers 2 and 3, but is expensive and requires a different level of understanding to implement correctly. All depends on the requirements you have I suppose. A path for you maybe to setup a new VLAN interface on your router, extend the VLAN to your new AP (access port or untagged if using COTS) over the switch and bridge the new VLAN interface with the exist WiFi Interface and see how you get on? Bridging and VLAN interface config are well documented in the Handbook and elsewhere. If you don't want to mirror security settings on the second AP, or you want to use a client identification system, it may be a Radius server is the best way forwards. Alternatively you could consider replicating everything but channel ID over SSH using (insert sync protocol / method of choice) for HostAP / WPA supplicant, etc. LPT: use a static IP on your WiFi client when developing / debugging and make sure you have ability to ping (icmp) from roaming device (which on an Android non-rooted device is easier said than done), the IP address will be the same regardless to which AP you connect in the above example path. LPT: Draw this out twice with IP and MAC addresses on: one logically showing the VLANs as separate wires and one physically showing connections in reality. Does this answer your question or provide a bit of guidance? Kind regards, James. On 7 Jan 2017 12:14, "Lev Serebryakov" <l...@freebsd.org> wrote: > Hello Freebsd-wireless, > > Now I'm have custom-build WiFi/Ethernet router which runs FreeBSD. It is > rather typical: two ethernet NICs (one for IS, second for my home wired > network, plugged into switch), one WiFi NIC (ath) which works in AP mode > (single SSID, nothing fancy) with hostapd and provide WiFi in my home. > This box runs DNS, dhcpd, firewall, NAT to ISP, IPv6 tunnel, VPN to my > work > office, etc. Typical small-scale router which uses a lot of FreeBSD > networking > features. > > One detail which is important for my question: I don't use bridge between > wlan and internal wired interface, they have different IPv4 and IPv6 > networks and box routes between them (with some firewalling). > > I'm using WPA2-PSK security on wlan interface, with help of hostapd > (no RADIUS). > > I want to add second physical AP to this config. Not VAP on existing wlan > card, or second wlan card to router, but separate "dumb" off-the-shelf > WiFi > AP to improve WiFi reception on other end of my home. I want it to be > connected by wire (to the same switch as my wired network), not in > wireless > repeater mode, as repeater mode consume too much bandwidth. > > But I want to have only one WiFi network, with transparent "roaming" > between APs and I don't want to configure security twice (in hostpad and > separate "hardware" AP) and I want my router to see WiFi network as one > interface, no matter which AP client uses (in same way as wired interface > in router doesn't bother which switch port is used by wired client). > > Is it possible to achieve this goal with FreeBSD and hostapd, not with > Cisco Wireless LAN Controller? :) > > I could put external AP to separate VLAN (my switch supports this). Is it > enough to bridge router's wlan interface (AP) and VLAN with external > (physical) AP and run hostpad (and all other services, like dhcpd) on this > bridge interface? Will it work? Or should I do something more specific? > > I could not find any documentation about such config (Linux or FreeBSD, > doesn't matter), all "multiple APs" how-tos are about multiple SSIDs on > one > interface. > > Maybe, this question is not completely FreeBSD-specific, but as I'm > using > FreeBSD, I think this list is appropriate enough for it. > > > -- > Best regards, > Lev mailto:l...@freebsd.org _______________________________________________ freebsd-wireless@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-wireless To unsubscribe, send any mail to "freebsd-wireless-unsubscr...@freebsd.org"