我无法理解如何“桥接”我的路由器。我在 Android 上使用 USB 网络共享来提供互联网访问。我想要实现的是让第二个路由器(路由器 2)位于 OpenWRT 路由器“后面”,从手机获取 WAN IP 地址。因此设置将如下所示:
Android --usb--> Router 1 (OpenWRT, Bridged) --> Router 2
我发现这个帖子本质上可以归结为:
$ cat /etc/config/network
config interface 'lan'
option type 'bridge'
option ifname 'eth0.1 eth1'
option proto 'static'
option ipaddr '10.0.1.150'
option netmask '255.255.255.0'
option gateway '10.0.1.1'
option broadcast '10.0.1.255'
我目前有三个主要问题:
这部分起什么作用
option broadcast '10.0.1.255'
?这是桥接接口的一部分还是其他不相关的部分?静态 IP 地址的用途是什么?这显然是内部 IP,但如果路由器是桥接的,您如何访问它?我只是不太了解桥接。
路由器 1 上的防火墙应如何配置?由于该路由器在网络上应该是相当透明的,因此我假设应该禁用桥接接口上的防火墙并依赖路由器 2 的防火墙。这样对吗?
答案1
首先,rtfm:https://wiki.openwrt.org/doc/uci/network
这广播地址是子网中的最后一个/最高地址:
可以通过对子网掩码的位补码和主机的 IP 地址进行按位或运算来获取 IPv4 主机的广播地址。换句话说,获取主机的 IP 地址,并将子网掩码中任何为“0”的位位置设置为“1”。
子网 10.0.1.0/255.255.255.0(或简称为 10.0.1.0/24)的广播地址为 10.0.1.255。无需设置它,因为它可以(并且将会!)计算出来。文档也证实了这一点。它与桥接完全无关。
您似乎对桥接的工作原理也存在一些误解。它是通过软件实现的。桥接器作为主机操作系统的网络接口出现。它有点像这样:
Unbridged:
-------+ +-------
| |
+---+-+---+
|eth0 eth1|
+---------+
Bridged:
--------+--------
|
+----+----+
| bridge0 |
+---------+
所以你当然仍然可以与路由器通信。即使在普通 WiFi 路由器中,WiFi AP 接口也会桥接到有线网络,因此如果这不起作用,那将是致命的。
(请注意,上面的图表过于简单。实际上还有更多内容。)
防火墙已经不起作用了,因为桥接防火墙默认是禁用的。此外,生成的br-lan
接口位于 LAN 区域。您甚至根本不需要任何防火墙,因为 Android 手机已经充当了 NAT 路由器。而且移动 ISP 很可能也在执行运营商级 NAT。
不过,最好在手机后面再安装一个 NAT 路由器,因为据我所知它们不能很好地处理多个客户端。
但为什么还要费心使用两个路由器呢?OpenWrt 可以做到这一切,您只需在第二个位置使用交换机即可。或者,如果您的目标是无线接入点,可以将第二个路由器设置为无线接入点。