Ubuntu 16.04实现WiFi与LAN同子网桥接配置方法咨询
配置Ubuntu 16.04作为同子网无线接入点(复用LAN的DHCP服务器)
我之前帮朋友搞定过一模一样的需求——不想用系统自带热点(那玩意儿会新建独立子网),要让无线设备直接接入现有LAN的子网,用LAN里的DHCP服务器分配地址。既然你已经确认无线网卡支持AP模式,那咱们直接用桥接+hostapd的方案,这是最靠谱的,我亲测有效:
1. 安装必要工具
首先安装桥接工具和hostapd:
sudo apt-get update sudo apt-get install hostapd bridge-utils -y
先暂时停掉hostapd服务,避免配置过程中冲突:
sudo systemctl stop hostapd sudo systemctl disable hostapd
2. 创建网络桥接
桥接是让无线网卡和有线网卡处于同一网络的核心,相当于把无线接口“挂”到有线网络上。
第一步:确认网卡名称
先运行命令查看你的有线和无线网卡名称:
ip link show
通常有线网卡是eth0或enp0sX,无线网卡是wlan0或wlp2sX,记下来这两个名字。
第二步:创建桥接接口
创建名为br0的桥接接口:
sudo brctl addbr br0
把有线网卡添加到桥接里:
sudo brctl addif br0 你的有线网卡名
第三步:配置网络接口文件
先备份原配置文件以防万一:
sudo cp /etc/network/interfaces /etc/network/interfaces.bak
然后编辑接口配置:
sudo nano /etc/network/interfaces
替换成以下内容(注意把eth0和wlan0换成你实际的网卡名):
# 有线网卡设置为手动模式,交给桥接管IP auto eth0 iface eth0 inet manual # 桥接接口用DHCP获取LAN的IP地址 auto br0 iface br0 inet dhcp bridge_ports eth0 wlan0
保存退出后重启网络服务:
sudo systemctl restart networking
3. 配置hostapd(无线接入点服务)
现在来配置无线热点的参数,比如SSID、密码这些。
第一步:创建hostapd配置文件
sudo nano /etc/hostapd/hostapd.conf
粘贴以下内容,根据你的需求修改ssid(热点名称)和wpa_passphrase(热点密码):
interface=wlan0 # 你的无线网卡名 bridge=br0 # 绑定到桥接接口 driver=nl80211 ssid=MyLANSharedWiFi hw_mode=g # 2.4G频段用g,5G用a channel=6 # 选一个不拥挤的信道,2.4G推荐1/6/11 wmm_enabled=0 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 # WPA2加密 wpa_passphrase=MyStrongWiFiPassword123 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP
第二步:指定hostapd的配置文件
编辑hostapd的默认配置:
sudo nano /etc/default/hostapd
找到#DAEMON_CONF=""这一行,去掉注释并填入配置文件路径:
DAEMON_CONF="/etc/hostapd/hostapd.conf"
4. 启动并验证服务
现在启动hostapd并设置开机自启:
sudo systemctl unmask hostapd sudo systemctl enable hostapd sudo systemctl start hostapd
验证配置是否成功
- 查看桥接状态:
brctl show,输出里应该能看到br0下面挂着你的有线和无线网卡。 - 用无线设备连接你设置的SSID,查看设备的IP地址,应该和LAN内其他设备处于同一子网。
- ping一下LAN内的其他设备,确认网络连通性正常。
常见问题排查
如果遇到hostapd启动失败,先查看日志找原因:
sudo journalctl -u hostapd
- 常见问题1:信道冲突,换一个信道试试(比如2.4G的1或11)。
- 常见问题2:驱动不兼容,如果你用的是Realtek网卡,可能需要把
driver=nl80211换成driver=rtl871xdrv(需要额外安装对应的驱动包)。 - 常见问题3:桥接没生效,检查
/etc/network/interfaces里的网卡名称是否正确,重启网络服务再试。
内容的提问来源于stack exchange,提问作者Sam
相关产品推荐
相关产品推荐

