Skip to main content

基于路由规则的方式

        路由规则是系统对流量转发路径的静态分配。

        在本教程的例子中,当系统存在静态路由表的时候,系统会按路由表的信息,按从上往下的顺序,为流量匹配优先路径。如果静态路由表的信息不正确,网络流量最终会被阻塞或丢失。
        您必须严格依照上下顺序为不同来源的流量分配特定网关。在路由表中一条规则的位置越靠上,它的优先级就越高。本文的设置优先将发往头显的流量转往内网网关,将发往互联网的流量转往外网网关。

工具和原料:
  1. 你的电脑;
  2. 一个闲置的,能用的无线路由器;
  3. 一根网线,用于将主机与前者连起来;
  4. 绣花针,回形针,细钉子或类似的东西(能戳进路由器的 Reset 孔里)
  5. 你的手,真实的,人类的手(Avatar 的就免了吧!)

本教程的内容涉及更改电脑系统敏感设置。请确保您清楚并理解自己在做什么,或征询专业人士的意见后再进行操作。

第一步:关闭系统服务。

       打开:开始菜单 →  搜索 →  输入“服务”。
       找到并关闭 “IP Helper”,然后重启您的电脑;
       这一步非常重要,因为 IP Helper 服务会干扰后续选项的设置

第二步:打开CMD窗口。

       打开:开始菜单 →  搜索 →  输入 “cmd”,打开 “命令提示符”;

第三步:查看本机网络信息。

       在CMD窗口输入ipconfig,按下回车,查看并复制保留输出结果,以下为我自己的电脑输出的参考:
f953c0a6cae161a412f5f259924913f668c2e383.png@!web-article-pic.webp
   你的电脑可能返回多个网络适配器的信息。
   但是通常来说,只有 “默认网关” 不为空的那一个才是你的电脑连到外部互联网的网卡,也就是您的“主网卡”。
   你需要记下电脑的主网卡ip地址,子网掩码和默认网关信息。

第四步:重置内网路由器。

       给准备要用于内网的路由器插上电源,将针尖戳进路由器的 Reset 孔,清空路由器的配置。
如果您使用的并非全新的路由器,这一步对于性能会有所帮助,重置后的路由器在 VR 串流的极端工况下性能会有所提高。

第五步:配置路由器。

连接内网路由器的wifi,或者使用网线把内网用的路由器和电脑连接起来,以便能访问路由器的网页管理界面。参考路由器机身贴纸或说明书,进入路由器的设置管理界面:

  1. 您需要将路由器设置为动态 IP 或 AP模式,当然自动检测上网方式也可也(一般选动态 IP 就好,若您选择了AP模式,取决于机型,可能无法再次进入路由器配置界面);
  2. 在内部网络 (LAN) 设置中,将“启用DHCP服务器”设置为“是”;
  3. 找到路由器的内部网络 IP 起始地址和结束地址选项,设置为与连接外网的路由器不一样的值:例如,在这里我的外网路由器开始和结束地址为 192.168.2.2 / 192.168.2.254,则内网部分设置成了:
    image.png
    如果您不太明白这两者之间的关系,也可照抄我设置的数值,我猜对于绝大部分家庭的网络环境,它可以正常工作。
  4. 对于第三步,有的路由器可能显示的是 “设置路由器局域网IP地址”,对于这种选项,则填入起始地址,并将最后一个数字改为 1 即可(对于我这里给的例子,则应该填入 192.168.101.1)。
  5. 无线名字、WiFi密码、管理密码等等自行设置。只要你的设备能连接上就行。

    但是无线频宽建议设置为80Mhz或更高。这样带宽是最大的。如果有beamforming(波束赋形)、MU-MIMO、链路聚合等选项的话,也可以打开。发射功率以你房间大小来定,只是在一个房间内用的话建议调低,设置为均衡或节能。

       至此,无线路由器的准备工作完成了。

第六步:配置电脑网卡设置。

       回到电脑,进入:设置  →  网络和internet → 状态  →  更改适配器选项。
找到您的电脑的两个物理网卡,在本例中,分别对应了无线和有线网卡:

image.png5Kno2EPYgHbYHn8E-image.png

       双击您打算用于连接到内网路由器的那个网卡的图标(在这里是有线网卡),进入“属性”界面,然后双击 “Internet协议版本4(TCP/IPv4)”,更改属性并保存。请注意默认网关必须为空:
image.png

第七步:配置路由规则。

       打开:开始菜单 →  搜索 →  输入 “cmd”,以管理员权限运行 “命令提示符”;
       然后通过 Route -p 指令为系统添加永久路由。请注意这里的指令基于本文的例子,如果您设置的参数与我不同,应当进行适当修改以避免出现问题。

Route add -p 192.168.101.0 mask 255.255.255.0 192.168.101.1

Route add -p 0.0.0.0 mask 0.0.0.0 192.168.2.1

        第一行的含义是,所有来自192.168.101.* 的流量发往 192.168.101.1,也就是内网网关;
        第二行的含义是,其他流量发往192.168.2.1,也就是外网网关,0.0.0.0的意思就是缺省。

        外网网关的地址可由前文所记下的主网卡 IP 地址信息推测获得。例如,若您的主网卡 IP 地址为 192.168.2.117,则外网网关应将最后一段的数字改为1,为 192.168.2.1。

        此时,如果一切顺利,在 CMD 窗口输入指令 route print 然后回车,应当看得到诸如此类似的结果:

image.png

或者这样:
image.png

        网关地址为 192.168.101.1,也就是内网 IP 的项应当且永远排在列表的第一位,而外网 IP 的项目正常情况下应当在第二位。这意味着您的本地路由会首先尝试匹配内网的规则,其次才会将流量发往外网。
如果您遇到了网页打不开,或者其他奇奇怪怪的断网故障,说明这些步骤在某些地方出了问题。可以用指令 route -f 清空本地路由设置,然后从第六步的步骤重新开始。

至此,基于路由规则的所有设置工作已经完成。好好玩吧!

END