一、中继和桥接介绍
1、网络拓扑图
2、功能介绍
(1)、无线中继
无线中继,即无线分布系统(WDS)组网,其工作原理是将无线信号从上一个中继点接力传递到下一个中继点(下一个点可以在不同信道上接收和转发),等同于将上一个WiFi配置不变但信号扩大出来,让同一个WiFi覆盖面积变大。
路由器R2的 wifi2-1 和 wifi2-2 关联LAN口,wifi2-1作为客户端连接主路由器 wifi1,wifi2-2作为热点使用。将LAN口IP设置为与主路由器LAN相同网段,并且DHCP关闭确保手机能够正常获取到主路由器LAN网络。 若要实现无缝漫游,将wifi2-2名称、密码设置和主路由器相同。这样手机在在两个路由器范围内移动过程可以实现wifi无缝连接。该网络适用于家庭网络实现wifi无缝漫游。(待验证:无线漫游功能wifi mac、频段和信道是否需要都相同???)
(2)、有线中继
R2 LAN口有线连接主路由器R1 LAN口,设置相同网段IP且关闭DHCP,wifi2作为热点使用;若要实现无线漫游则将 wifi2名称和密码设置与主路由器wifi相同。
(3)、无线桥接
路由器R3 wifi3-1关联WAN口作为客户端主动去连接主路由器R1的 wifi1;wifi3-2关联LAN口设置与 R1 LAN不同网段IP,配置wifi3-2名称和密码作为热点使用;LAN口DHCP开启。 该网络适用于重新组网,主路由器无法检测到从路由器LAN局域网设备,也不能实现wifi无缝漫游。
总结
中继网络网段不变,将wifi信号扩大使用;桥接网络网段改变,重新建立新的局域网。
中继和桥接会将原本有线的带宽资源层层递减,甚至在末端将面临有网无速的状况;而且由于是这种单链结构,其中一个路由坏了,后续的网络则全部瘫痪
二、OpenWRT路由器中继配置
1、路由器基本配置
准备两台 OpenWRT路由器,分别为 R1和 R2,路由器R1作为网络提供设备,R2作为接收 R1网络上网设备。配置R1路由器 wan口和 lan口地址,使路由器能正常上网且LAN网络启用DHCP服务提供局域网使用;并启用配置R1路由器的wifi网络。(详细配置这边不做具体说明)
2、中继网络页面配置
(1)、主路由器 R1配置
作为wifi网络提供一方,提供的 wifi需要启用 ,“网络 -> 无线 -> 修改”,将模式由 “接入点AP” 改为 “接入点AP(WDS)”,提交保存。(注:中继必须选用WDS选项)
(2)、从路由器 R2配置
路由器 R2在进行wifi中继连接前,需要先将LAN口的DHCP功能关闭,防止测试时电脑或手机端自动获取IP获取到本机的IP,本机LAN口地址最好设置与R1的LAN地址不同,以便测试时容易区分。
(a).“网络 -> 无线 -> 搜索/修改”。以搜索wifi为例,从搜索出来的wifi中选择 R1的wifi名称,并点击 “加入网络”;
(b).然后配置WiFi秘钥和选择防火墙区域(若wifi无秘钥这边会不显示),可以勾选重置无线,提交配置。
©. 模式由 “客户端Client” 改为 “客户端Client(WDS)”,网络选择 lan,提交保存。
(d). 此时返回 “无线”界面,可以看到wifi已经连接成功,显示的已连接设备为R1。
(e). 用一台电脑连接路由器R2的LAN口,选择自动获取IP,可以发现电脑能够正常获取到IP地址,并且该IP为R1的局域网地址,测试也能正常上网。
(f). 查看R1无线界面可以发现已经有一台设备正在连接,该设备为R2,没有IP地址。
3、中继网络文件配置
(1)、主路由器 R1配置
1). 启用 WDS
vi /etc/config/wirelessconfig wifi-device 'radio0'option type 'mac80211'option channel '11'# 无线信道option hwmode '11g'option path 'platform/ar934x_wmac'option htmode 'HT20'# 频宽option disabled '0'# 启用无线config wifi-ifaceoption device 'radio0'# 对应网络设备option network 'lan'# 桥接到lanoption mode 'ap'# ap模式option ssid 'wifi123'# wifi 名称option encryption 'none'# 不加密option macaddr 'CA:AC:88:68:8B:FB'# 接口MAC(可不配置)option wds '1'# 启用wds
2). 重启网络
/etc/init.d/network restart
重启网络后 ps 可以查看到相应的进程被启用:
/usr/sbin/hostapd -s -P /var/run/wifi-phy0.pid -B /var/run/hostapd-phy0.conf
当有从路由器成功中继后,ifconfig可以查看到会多出相应虚拟接口,例如 wlan0.sta1:
wlan0Link encap:Ethernet HWaddr CA:AC:88:68:8B:FB inet6 addr: fe80::c8ac:88ff:fe68:8bfb/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:510 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:74849 (73.0 KiB)wlan0.sta1 Link encap:Ethernet HWaddr CA:AC:88:68:8B:FB // ------ 中继成功后才会出现inet6 addr: fe80::c8ac:88ff:fe68:8bfb/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:14791 errors:0 dropped:0 overruns:0 frame:0TX packets:12251 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:2106916 (2.0 MiB) TX bytes:2303829 (2.1 MiB)
(2)、从路由器 R2配置
1). 关闭dhcp
【 vi /etc/config/dhcp 】config dhcp lanoption interfacelanoption ignore1// 关闭lan口 dnsmasq
2). 修改WiFi模式和启用WDS
【 vi /etc/config/wireless 】config wifi-device 'radio0'option type 'mac80211'option channel '11'option hwmode '11g'option path 'platform/ar934x_wmac'option htmode 'HT20'option disabled '0'config wifi-ifaceoption device 'radio0'option network 'lan'option mode 'sta'// sta 模式+++option ssid 'wifi123'// 要中继的wifi +++option encryption 'none'option bssid 'CA:AC:88:68:8B:FB'// +++ (自动生成,也可不配置)option wds '1'// 启用 wds +++
3). 重启网络
/etc/init.d/network restart
重启网络后 ps 可以查看到相应的进程被启用:
/usr/sbin/wpa_supplicant -B -s -b br-lan -P /var/run/wpa_supplicant-wlan0.pid -D nl80211 -i wlan0 -c /var/run/wpa_supplicant-wlan0.conf -C /var/run/wpa_supplicant
WiFi对应的接口
wlan0Link encap:Ethernet HWaddr 24:63:00:04:25:08 inet6 addr: fe80::2663:ff:fe04:2508/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:12802 errors:0 dropped:0 overruns:0 frame:0TX packets:15464 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:2062508 (1.9 MiB) TX bytes:2605174 (2.4 MiB)
查看中继状态:
root@OpenWrt:~# iwconfig wlan0wlan0IEEE 802.11ng ESSID:"wifi123" Mode:Managed Frequency:2.462 GHz Access Point: ca:ac:88:68:8b:fb Bit Rate:144.44 Mb/s Tx-Power=19 dBm RTS thr:off Fragment thr:offPower Management:offLink Quality=94/94 Signal level=-31 dBm Noise level=-95 dBmRx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0Tx excessive retries:0 Invalid misc:0 Missed beacon:0###################################################若连接成功则接入点会显示主路由器 BSSID:Access Point: ca:ac:88:68:8b:fb若连接成功则接入点不显示MAC:Access Point: Not-Associated(本人实测在连接成功或连接断开,该位置都会自动刷新)###################################################
或
root@OpenWrt:~# iw dev wlan0 station dumpStation ca:ac:88:68:8b:fb (on wlan0)// 显示为主路由器MACinactive time:60 msrx bytes:125032rx packets:386tx bytes:40584tx packets:226tx retries:52tx failed:0beacon loss:0beacon rx:94rx drop misc:6signal: -49 [-52, -53] dBmsignal avg:-52 [-56, -55] dBmbeacon signal avg:-51 dBmtx bitrate:78.0 MBit/s MCS 12rx bitrate:130.0 MBit/s MCS 15rx duration:15643 usexpected throughput:33.507Mbpsauthorized:yesauthenticated:yesassociated:yespreamble:longWMM/WME:yesMFP:noTDLS peer:noDTIM period:2beacon interval:100CTS protection:yesshort preamble:yesshort slot time:yesconnected time:10 seconds
4、总结
无线中继模式虽然使无线覆盖变得更容易和灵活,但是却需要高档AP支持,而且如果中心AP出了问题,将导致整个WLAN网络瘫痪,冗余性无法保障。中继网络在应用中最常见的是 “无线漫游” 模式,这种模式通常用在没法进行网络布线的特殊情况下,可适用于那些场地开阔、不便于铺设以太网线的场所,比如机场、广场、仓库、码头等。
无线分布系统(WDS)最多允许在访问点之间配置四个点对点链路。一般情况,中心AP最多支持四个远端无线中继模式的AP接入。(待验证 ???)
三、OpenWRT路由器桥接配置
1、桥接网络页面配置
(1)、主路由器 R1配置
作为wifi热点提供端,模式可以选择 “接入点AP”,也可以选择 “接入点AP(WDS)”。
(2)、从路由器 R2配置
从路由器R2配置跟上面中继的配置类似,区别在于模式和网络分配两部分配置不同,中继模式为 “客户端Client(WDS)”,接口网络 “lan”,关闭DHCP;而桥接选择模式 “客户端Client”, 接口网络选 “wwan”,启用内网DHCP。
2、桥接网络文件配置
(1)、主路由器 R1配置
文件配置:
vi /etc/config/wirelessconfig wifi-device 'radio0'option type 'mac80211'option channel '11'option hwmode '11g'option path 'platform/ar934x_wmac'option htmode 'HT20'option disabled '0'config wifi-ifaceoption device 'radio0'option network 'lan'option mode 'ap'option ssid 'wifi123'option encryption 'none'option macaddr 'CA:AC:88:68:8B:FB'
重启网络
/etc/init.d/network restart
启用进程
/usr/sbin/hostapd -s -P /var/run/wifi-phy0.pid -B /var/run/hostapd-phy0.conf
wifi接口
wlan0Link encap:Ethernet HWaddr CA:AC:88:68:8B:FB inet6 addr: fe80::c8ac:88ff:fe68:8bfb/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:80 errors:0 dropped:0 overruns:0 frame:0TX packets:714 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:11857 (11.5 KiB) TX bytes:80043 (78.1 KiB)
(2)、从路由器 R2配置
1). 文件配置:
(与中继区别:网络为 “wwan”,不启用 WDS)
vi /etc/config/wirelessconfig wifi-device 'radio0'option type 'mac80211'option channel '11'option hwmode '11g'option path 'platform/ar934x_wmac'option htmode 'HT20'option disabled '0'config wifi-ifaceoption device 'radio0'option network 'wwan'option mode 'sta'option ssid 'wifi123'option encryption 'none'option bssid 'CA:AC:88:68:8B:FB'
2). 启用 dhcp获取 ip
【 vi /etc/config/network 】config interface 'wwan'option proto 'dhcp'
2). 防火墙放行
【 vi /etc/config/firewall 】config zoneoption input 'ACCEPT'option forward 'ACCEPT'option output 'ACCEPT'option name 'lan'option network 'lan wwan'// 新增放行 wwan网络
3). 重启网络
/etc/init.d/network restart
重启网络后 ps 可以查看到相应的进程被启用:
/usr/sbin/wpa_supplicant -B -s -P /var/run/wpa_supplicant-wlan0.pid -D nl80211 -i wlan0 -c /var/run/wpa_supplicant-wlan0.conf -C /var/run/wpa_supplicantudhcpc -p /var/run/udhcpc-wlan0.pid -s /lib/netifd/dhcp.script -f -t 0 -i wlan0 -x hostname:OpenWrt -C -O 121
WiFi对应的接口
wlan0Link encap:Ethernet HWaddr 24:63:00:04:25:08 inet addr:192.168.9.134 Bcast:192.168.9.255 Mask:255.255.255.0inet6 addr: fe80::2663:ff:fe04:2508/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:35 errors:0 dropped:0 overruns:0 frame:0TX packets:9 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:5143 (5.0 KiB) TX bytes:1542 (1.5 KiB)
桥接成功后,路由器R2可以获取到R1分配的一个IP和网关地址,R2通过该分配到的地址和网关进行上网。