一些用户/路由器经常无法访问互联网
您需要进行一些调试来解决此问题。
在您的设计中,间歇性访问 Internet 或其他网络等问题有时是由以下原因引起的:
- 路由器只是过载
- 因为你说你使用DHCP,如果某些用户使用静态IP,可能会出现IP冲突问题
- 192.168.10.0/24 网络(主路由器)似乎很大,您甚至可以将一些 24 端口交换机级联在一起。请记住,广播将非常频繁,因此广播风暴可能会经常发生。
- 无线干扰,但这不太可能,因为您说您使用不同的频道
- 您的设备可能有故障,但这也不太可能
这样最好做一些动作:
监控路由表。如果所有路由器都是消费级路由器,您通常无权访问这些表。如果您碰巧可以访问这些路由表,请监控这些路由表。看看是否有任何不时发生的动态变化。动态路由协议是造成这种情况的主要原因。冲突的路由协议设置会混淆网络中的路由器并定期更改路由表。但是,如果您只使用消费级路由器,这些路由器有时没有配备可配置的动态路由协议。相反,所有路由都是通过 DHCP 获取的,为它们提供默认路由。如果是这种情况,那么您可以跳过此步骤,因为您将无法访问消费级路由器中的路由表,除非您使用其他路由器固件。
确保 DHCP 设置正确。您的网络似乎使用 /24 掩码。这意味着一个网络中可以存在 254 个 IP,包括网关。这并不一定意味着 DHCP 为用户提供了足够的 IP。DHCP 池可能已满。如果 DHCP 池没有为用户提供足够的 IP,则用户根本没有 IP 可以连接。您可以简单地扩大 DHCP 的 IP 范围。如果有一些用户在第一次连接到网络后就没有连接到互联网,请检查 DHCP 设置。
要查看 Internet 连接是否断开,我猜您对 Internet 中的某些站点进行了 ping 测试。ping 是否因
request time out(RTO) 或destination unreachable? 如果是request time out,则用户发送的数据包不会得到任何回复。在IP冲突的情况下,数据包可以随机发送到不同的位置。因为有两个相同的 IP,路由器可能会混淆数据包的发送位置(ping 回复消息发送到错误的位置)。如果是destination unreachable,那就是网络问题。destination unreachable由路由器生成作为回复消息,以指示该路由器不知道目的地。路由器不知道将其发送到哪里。用于traceroute查看您的 ping 丢失的位置。间歇性destination unreachable消息可能意味着您的路由器有故障。这可能意味着路由器无法完全解析路由表(例如内存已满),或其他导致目标地址间歇性地从路由表中擦除/写入的问题。查看不能上网的用户是否可以ping通:他们的默认网关、主网关、同一子网中的其他用户或不同子网中的其他用户。这样您就知道哪些接口/路由器是问题的根源。关键是,您需要通过不时在不同位置之间进行 ping 来隔离问题的根源。执行至少 5 分钟的 ping 操作,想象数据包会去哪里,同时也想象回复会去哪里,有时您的数据包被发送到目的地但没有回复。
wireshark使用或等监控工具查看您的 ping 数据包是否到达目的地tcpdump。尝试禁用某些子网一段时间,看看问题是否仍然存在。如果不建议禁用子网以减少负载,请尝试使用
iperf负载测试您的基础设施。将服务器和客户端放置在子网中的不同位置,以查看哪些路由器过载。如果您看到速度达到峰值,则子网或网络设备可能会过载。消费级网络设备有时内存很小。路由/转发表存储在内存中。数据包在内存中排队。如果队列不足以容纳数据包,则可能会丢弃一些数据包。这有时会导致
request time out. 增加网络中的负载,看看你是否看到更多request time out。查看 RTO 消息的数量是否与网络负载呈线性关系。诸如 D-link DIR-655 之类的路由器对于该网络来说可能太小了,尤其是当许多用户处于活动状态时。过载的路由器并不总是使用户无法连接到互联网。它可能使许多数据包被丢弃(如第 7 点)或在路由器中排队时间过长。如果是这种情况,您应该会看到当更多用户处于活动状态时浏览 Internet 时响应时间会增加,因为许多 IP 数据包被丢弃或排队时间过长,并且重新发送了如此多的 HTTP 数据包(TCP 段)。
考虑为您的网络使用更好的主路由器。您可以将主路由器和交换机 5 一起替换为第 3 层交换机。
许多自定义路由器固件允许您查看路由器内存的使用情况。如果您的路由器固件不允许您查看内存使用情况,请考虑使用此功能。
