家里Wi-Fi连上了,网页却打不开,很多人第一反应是重启路由器。其实问题可能不在硬件,而在一张看不见的“地图”——路由表。
路由表是什么?
你可以把它想象成快递公司的派送路线图。当你的电脑要发数据到某个网站,比如访问百度,数据包不能乱跑,得知道走哪条路最快最准。路由表就是告诉系统“去这个地方,该从哪个接口出去”的清单。
每台能联网的设备,不管是手机、电脑还是路由器,都有自己的路由表。它记录了目标网络的位置、下一跳地址(也就是下一个中转站)、出口网卡等信息。
看看你电脑里的路由表
在Windows电脑上,打开命令提示符输入:
route print
在Mac或Linux系统里,用这条命令:
netstat -rn
你会看到一长串列表,里面有Destination(目标)、Gateway(网关)、Genmask(子网掩码)、Interface(接口)等字段。其中最常见的一条是默认路由:
Destination: 0.0.0.0
Gateway: 192.168.1.1
Interface: 192.168.1.100
这意思就是:所有不知道往哪发的数据包,都先交给192.168.1.1这个网关处理,也就是你的路由器。
为什么有时候上不了网?可能是路由出了问题
举个例子:你在公司连了VPN,突然发现内网系统能访问,但微信刷不出来。这是因为VPN添加了一条更具体的路由规则,把原本该走公网的流量引到了私有通道里,而这个通道并不支持访问外部网站。
另一个常见情况是双网卡设备,比如一台笔记本同时插着网线又连着Wi-Fi。系统可能会选错出口,导致数据发出去收不回响应。这时候查路由表,往往能看到两条冲突的路径。
手动加一条路由试试
假设你要让所有发往10.20.0.0/16网段的流量走特定网关192.168.1.2,在Windows下可以这样写:
route add 10.20.0.0 mask 255.255.0.0 192.168.1.2
这条命令就像给系统贴了个便签:“记住啊,去10.20开头的地方,别走老路,拐个弯去192.168.1.2那儿。”
当然,临时添加的路由重启后就没了。如果需要永久生效,得加上-p参数(Windows)或者写进网络配置文件(Linux/Mac)。
路由器之间也靠路由表协作
不只是你的设备有路由表,整个互联网的运转依赖无数路由器之间的动态路由协议,比如OSPF、BGP。它们会自动交换信息,更新各自的路由表,确保即使某条线路断了,数据也能绕道通行。
你家宽带偶尔闪断一下还能恢复,就是因为运营商的路由器发现了故障,迅速调整了路由策略,换了一条新路继续传数据。
下次遇到网络不通,别急着拍路由器。先看看是不是路由表里指错了方向。一张小小的表,决定着数据能不能顺利回家。