路由器是通过光纤连接的旧款 Intento FG101R2,有 4 个 Lan 端口。
经过摆弄和多次恢复出厂设置后,我无法再通过路由器上的任何 Eth 端口访问路由器和互联网,但我可以通过无线访问并建立互联网连接。
尝试了多台机器、电缆、端口,手动添加并自动获取客户端机器上的 IP 设置。我还尝试通过路由器的 Web 界面为 LAN 接口配置第二个 IP 地址和子网掩码,但仍然没有从 DHCP 获取 IP 设置,并且在客户端机器上手动设置 IP 和网关也没有成功。
恢复出厂设置后立即获取以下输出,同时仍然可以通过无线访问路由器和互联网连接。
当前路由如下(ISP的网关Xd out):
> route show
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 * 255.255.255.0 U 0 0 0 br0
XXX.XXX.XX.X * 255.255.255.0 U 0 0 0 eth0.6.2
default XXX.XXX.XX.X 0.0.0.0 UG 0 0 0 eth0.6.2
恢复出厂设置后自动创建的桥接器:
> brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000000000002 no wl0
wl0.1
wl0.2
wl0.3
ifconfig(公共IP Xd out,没有编辑任何HWaddr):
> ifconfig
br0 Link encap:Ethernet HWaddr 00:00:00:00:00:02
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:33494 errors:0 dropped:0 overruns:0 frame:0
TX packets:32654 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2369860 (2.2 MiB) TX bytes:40415361 (38.5 MiB)
eth0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:74309 errors:0 dropped:0 overruns:0 frame:0
TX packets:30848 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:43378501 (41.3 MiB) TX bytes:2762411 (2.6 MiB)
Interrupt:25 Base address:0x5120
eth0.5 Link encap:Ethernet HWaddr 00:00:00:00:00:00
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2098 errors:0 dropped:0 overruns:0 frame:0
TX packets:1 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:623538 (608.9 KiB) TX bytes:68 (68.0 B)
eth0.6 Link encap:Ethernet HWaddr 00:00:00:00:00:00
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:72211 errors:0 dropped:0 overruns:0 frame:0
TX packets:30843 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:42754963 (40.7 MiB) TX bytes:2762071 (2.6 MiB)
eth0.6.2 Link encap:Ethernet HWaddr 00:00:00:00:00:03
inet addr:XXX.XXX.XX.XXX Bcast:XXX.XXX.XXX.XXX Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:72203 errors:0 dropped:0 overruns:0 frame:0
TX packets:30843 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:41454581 (39.5 MiB) TX bytes:2599793 (2.4 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:80 errors:0 dropped:0 overruns:0 frame:0
TX packets:80 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3656 (3.5 KiB) TX bytes:3656 (3.5 KiB)
wl0 Link encap:Ethernet HWaddr 00:00:00:00:00:02
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:32959 errors:0 dropped:0 overruns:0 frame:21980
TX packets:32847 errors:3 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2755587 (2.6 MiB) TX bytes:40960743 (39.0 MiB)
Interrupt:39
iptables:
> iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT udp -- anywhere anywhere udp dpts:10000:10008
ACCEPT tcp -- anywhere anywhere tcp dpt:5060
ACCEPT udp -- anywhere anywhere udp dpt:5060
ACCEPT udp -- 192.168.1.0/24 anywhere udp dpt:30006
ACCEPT tcp -- anywhere anywhere tcp dpt:30005
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DROP all -- anywhere 239.255.255.250
Dhcp 服务器配置(udhcpd):
> dhcpserver show
start 192.168.1.2
end 192.168.1.254
interface br0
decline_file /var/udhcpd.decline
option lease 86400
option min_lease 30
option subnet 255.255.255.0
option router 192.168.1.1
option dns 192.168.1.1
option dns 192.168.1.1
option domain Home
恢复出厂设置并重启后的系统日志: https://pastebin.com/TZJUN5Ji(Xd 出我的 IP、ISP 的网关和 DNS 服务器。奇怪的是,我的所有 Mac 都是 0-d,而且不确定为什么 IP 128.9.0.107 在那里,因为它与我的 ISP 或我根本无关)
如果还有什么我可以添加的,请告诉我,任何帮助或建议都将非常感谢!
--
编辑:
尝试将 eth0.5 添加到网桥 br0,出现错误can't add eth0.5 to bridge br0: Cannot assign requested address
。关闭接口并为 eth0.5 分配随机 MAC 地址,之后我就能够将 eth0.5 添加到 br0。
通过其中一个 ETH 端口自动获取 IP!能够通过 Web 界面连接到路由器,但同时无法通过无线或以太网连接 SSH/Telnet。
发现 DNS 服务器已改为 192.168.1.1,所以我通过 Web 界面将其改为 Google 公共服务器。稍等片刻后,我就可以通过无线和以太网访问互联网了。
编辑: 查看了 Web 界面并仔细检查了访问控制规则和复选框,发现它们似乎正确,但仍然没有 SSH/Telnet 访问。
尝试向该网桥添加其他 Lan 端口,但这似乎会破坏一些东西,之后我无法 ping 通 ISP 的网关,因此我进行了恢复出厂设置并坚持只将 eth0.5 添加到 br0。
编辑: 一步步弄清楚后,我发现其他 ETH Lan 端口(eth0.2、eth0.3、eth0.4)没有标记为已启动,所以我做了同样的事情,分配了随机 Mac,添加到网桥并将它们标记为已启动。之前导致问题的原因是我在网桥上添加了 eth0.6,该网桥用于 eth0.6.2 上的 WAN。现在所有 LAN 端口都可以正常工作,可以通过无线和 ETH 访问互联网和路由器。现在还可以通过 ETH 访问 SSH/Telnet,这在添加到网桥后似乎无法立即使用。
--
问题是重新启动路由器后,这些更改似乎会恢复,ETH 接口会从网桥中移除,并且一切都回到我开始的地方。
如果有人知道我该如何做才能让这些改变不再复原,我将不胜感激。