桥接连接的路由问题

桥接连接的路由问题

我在 Raspberry Pi 盒子上设置有线到无线桥接时遇到了问题 - 但现在已经解决了 -Linux 中的有线到无线桥接- 但结果似乎是,运行在盒子上的 squid 代理服务器现在出现故障 - 例如,许多事情都以 TCP_MISS 的形式超时。(见下文:这似乎是关于数据包被路由到我的网络之外的问题 - 我的网络内的连接工作正常)

我该如何设置 squid 服务器以使其再次工作?

eth0 没有 ip4 地址,wlan0 没有 ip4 地址,br0 有。但它们都有 ip6 地址 - 虽然我没有使用 ip6。

我可以使用 ssh 登录和退出 RasPi,并且 Squid 请求正在到达它...

更新:显然我遇到了一些路由问题。刚刚从 RasPi 盒 ping 了一个外部地址,五次 ping 耗时 80244 毫秒!不过没有丢包。我的路由表看起来完全正常……

pi@raspberrypi ~ $ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.62.1    0.0.0.0         UG    0      0        0 br0
192.168.62.0    0.0.0.0         255.255.255.0   U     0      0        0 br0

进一步更新:我在网络内部路由数据包没有问题,但这台机器向外部传输数据包显然存在很大问题。

答案1

您确实要进行高级设置。我猜如果您 p​​ing 网关 192.168.62.1,您会得到 20 毫秒以下的结果?而 ping 8.8.8.8 (google) 会得到 80 秒的结果。

运行traceroute 8.8.8.8

您的第一跳应该快速到达 192.168.62.1,第二跳应该到达您的 ISP 网关。Traceroute 比普通 ping 需要更长的时间才能完成,所以不要为此担心。

如果前 2 个跳数不同,则可能存在网络环路,甚至是 QoS 问题。

至于 squid,您运行的是正向代理还是反向代理?反向代理处理进入服务器/网络的请求并重定向它们等。正向代理可能缓存面向外部的请求并记录它们等。

可能没有理由不能在网桥上运行代理,但我认为在实践中从来没有这样做过,因为网桥的目的是盲目地传递流量,而代理则做相反的事情。

目前,您不需要 IPv6。根据您的 ISP 和路由器设置,它可以提供对您网络上设备的直接(非 NAT)访问。我不认为这是导致您出现问题的原因,但如果您将其关闭,则可以消除此问题和安全风险。

在你的 Debian 盒子上,echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d/disableipv6.conf

我确实发现您的路由表存在一个小问题。您的指标可能有冲突。通常,我认为您的网关指标应该是 0,但您的 LAN 指标也是 0,我认为应该是 1 或更大。

我会尝试改变它。ip route del 192.168.62.0/24 dev br0 proto kernel scope link src 192.168.62.[your ip] metric 0然后ip route add 192.168.62.0/24 dev br0 proto kernel scope link src 192.168.62.[your ip] metric 2

然后再次尝试 ping 和 traceroute。

相关内容