双网口桥接测试


1. 双网口桥接方式

  1. 双有线网口。一端接入网络,另一个接设备;

  2. 双无线网口。一端STA模式接入网络,另一端开启AP模式,创建热点,供设备接入;

  3. 一个有线网口,一个无线网口。有线网口接入网络,无线网口开启AP模式,创建热点,供设备接入;

  4. 一个有线网口,一个无线网口。无线网口STA模式接入网络,有线网口接设备。


2. kernel配置

kernel配置中设置下列选项:

Networking support -> Wireless:
    <*> cfg80211 - wireless configuration API


Device Drivers->Generic Driver options
    [*] Support for uevent helper


Networking support  Networking options
    <*> 802.1d Ethernet Bridging

3. 桥接测试

建立桥接前需要确认网口是否能正常工作,若使用Wi-Fi,确认有正常加载wifi驱动。

可使用ifconfig -a查看网口设备的节点名称。

3.1. 桥接方式

桥接方式 前级网口 后级网口 配置Wi-Fi STA 建立桥接 配置Wi-Fi AP
双有线网口 eth0 eth1 × ×
双无线网口 wlan0 p2p0
有线网口+无线网口,Wi-Fi接入 wlan0 eth0 ×
有线网口+无线网口,有线网口接入 eth0 p2p0 ×

3.2. 配置Wi-Fi STA环境

3.2.1. Wi-Fi配置接入热点信息

编辑/appconfigs/wpa_supplicant.conf,添加可连接的热点信息。例如添加名称为“EnglishName”的热点:

ctrl_interface=/customer/profile/wpa_supplicant
update_config=1

network={
    ssid="EnglishName"
    psk="12345678"
}

3.2.2. 连接热点

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/lib:/config/wifi
ifconfig wlan0 up
./wpa_supplicant  -Dnl80211 -i wlan0 -c /appconfigs/wpa_supplicant.conf -d &
udhcpc  -q -i wlan0 -s /etc/init.d/udhcpc.script &

3.3. 配置Wi-Fi AP环境

3.3.1. Wi-Fi作为热点配置热点信息

编辑config/wifi/hostapd.conf,如设置热点名称为“ssw101bap”,连接密码为“12345678”。如需修改热点名称和密码,可编辑下面的“ssid”和“wpa_passphrase”字段。

interface=p2p0
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
driver=nl80211
ssid=ssw101bap
hw_mode=g
channel=4
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=3
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

3.3.2. 配置热点

touch /appconfigs/hosts
mkdir -p /appconfigs/misc/wifi/
mkdir -p /var/wifi/misc/
mkdir -p /var/lib/misc/
mkdir -p /var/run/hostapd/
udhcpc -S /etc/init.d/udhcpc.script -i br0

./hostapd -B /config/wifi/hostapd.conf
./dnsmasq -i p2p0 --no-daemon -C /config/wifi/dnsmasq.conf &

3.4. 建立桥接

ifconfig [前级网口] up
ifconfig [后级网口] up
ifconfig [前级网口] 0.0.0.0
ifconfig [后级网口] 0.0.0.0
brctl addbr br0
brctl addif br0 [前级网口]
brctl addif br0 [后级网口]
ifconfig br0 up

双网口桥接模式建立成功。