我在 ubuntu 14.04 伺服器上使用 dnsmasq 作為 LAN 上的 DHCP 和 DNS 伺服器。該裝置只有 1 個乙太網路 NIC。
我想設定一個具有多個 SSID 的無線存取點。 wifi AP 和 dnsmasq 不是同一台裝置。我想根據客戶端裝置連接的 wifi SSID 設定不同的子網路。如何使用 dnsmasq 實現此目的?
dnsmasq 需要能夠辨識裝置來自的 ssid,以便透過 ssid 獲得不同的 dhcp 範圍。這可能嗎?如何?
我讀過很多關於 dnsmasq 的文章,但通常 wifi 和 dnsmasq 是同一個設備,我一直不清楚 dnsmasq 如何區分不同的 SSID。
答案1
通常這是由不同的 VLAN 完成的。每個 SSID 會對應到一個 VLAN。在乙太網路中,您應該配置對交換器的多個 VLAN 存取(這會在您的電腦中建立多個虛擬接口,每個虛擬接口都有一個配置:每個網路中的 IP、遮罩等)。
在 google 中搜尋如何在 linux 中設定 VLAN(例如,來自 google 的第一個符合項目:http://www.cyberciti.biz/tips/howto-configure-linux-virtual-local-area-network-vlan.html,或者,第二個匹配:https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Networking_Guide/sec-Configure_802_1Q_VLAN_Tagging_Using_the_Command_Line.html)。
在您的交換器中,您需要 VLAN 支援(至少需要一些具有管理功能的 L2 交換器)