OpenWrt + OVS路由器如何设置无线网络?

How to set up wireless network on OpenWrt + OVS router?

我在路由器上刷了OpenWrt + Open Vswitch:TP-link AC1750

我想添加一个控制器(泛光灯)在路由器上监听,所有连接到无线网络的设备都可以在泛光灯上看到。

我已阅读 openwrt.org 上的文档以了解有关配置文件的条款:/etc/config/network。但我还有一些基本问题希望有人能帮助我。谢谢!

  1. Wifi的设备是什么?是wan/wan6吗?
  2. ifconfig 输出中的 br-lan 是什么?为什么它的ip是192.168.1.1?这是否意味着任何通过无线网络连接的设备都连接到 br-lan?而且我不知道在哪里可以找到它的配置。
  3. 图中路由器的架构,为什么br-lan是wifi和eth1之间的bridge?在默认的配置文件中,wan/wan6应该在eth0上吧?比较它们我有点困惑。
  4. 我用 ove-vsctl 添加了一个名为“mybridge”的网桥。但是当我用 ovs-vsctl add-port mybridge {wlan0, ​​eth1} 添加端口时,报错了?但是如果我添加eth0,就没有错误了。

因为controller只能监听ovs bridge,所以我相信我必须使用ovs-vsctl create a bridge来代替br-lan的功能。但我不知道从哪里开始。除了上述问题,任何人都可以告诉我这样做的方向吗?谢谢

ifconfig 输出:

br-lan    Link encap:Ethernet  HWaddr A4:2B:B0:DC:64:34
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fd40:41e7:b9c0::1/60 Scope:Global
          inet6 addr: fe80::a62b:b0ff:fedc:6434/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:151654 errors:0 dropped:0 overruns:0 frame:0
          TX packets:236631 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:15601422 (14.8 MiB)  TX bytes:251291293 (239.6 MiB)

eth0      Link encap:Ethernet  HWaddr A4:2B:B0:DC:64:35
          inet addr:192.168.0.106  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::a62b:b0ff:fedc:6435/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1083749 errors:0 dropped:0 overruns:0 frame:0
          TX packets:150544 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:433298836 (413.2 MiB)  TX bytes:18665423 (17.7 MiB)
          Interrupt:4

eth1      Link encap:Ethernet  HWaddr A4:2B:B0:DC:64:34
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9727 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:335 (335.0 B)  TX bytes:676714 (660.8 KiB)
          Interrupt:5

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:905 errors:0 dropped:0 overruns:0 frame:0
          TX packets:905 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:85370 (83.3 KiB)  TX bytes:85370 (83.3 KiB)

wlan0     Link encap:Ethernet  HWaddr A4:2B:B0:DC:64:33
          inet6 addr: fe80::a62b:b0ff:fedc:6433/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:153653 errors:0 dropped:0 overruns:0 frame:0
          TX packets:223631 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:17983679 (17.1 MiB)  TX bytes:256128206 (244.2 MiB)

默认/etc/config/network:

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fd40:41e7:b9c0::/48'

config interface 'lan'
        option ifname 'eth1'
        option force_link '1'
        option type 'bridge'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option ifname 'eth0'
        option proto 'dhcp'

config interface 'wan6'
        option ifname 'eth0'
        option proto 'dhcpv6'

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1 2'
        
config switch_vlan
        option device 'switch0'
        option vlan '1'
        option ports '0 2 3 4 5'

config switch_vlan
        option device 'switch0'
        option vlan '2'
        option ports '1 6'

路由器的结构:

Default figure of the router

我明白了。步骤如下:

我通过

创建了一座新桥

ovs-vsctl 添加-br mybridge

然后我比较了/etc/config/wireless和/etc/config/network,发现无线设备连接到接口'lan'和'eth1',就像我上面攻击的图一样。所以我认为接口 'lan' 在某种程度上可以等于 'br-lan' 。然后在/etc/config/network中,我修改了:

config interface 'lan'
        option ifname 'eth1 mybridge'
        option force_link '1'
        option type 'bridge'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

并通过以下方式在 'mybridge' 上设置控制器:

ovs-vsctl 设置控制器 mybridge tcp:ip:port

终于可以在控制器端看到连接到路由器的设备并推送有关设备的流量。