• 双网卡网络设置:有线网卡优先级高于无线网卡


    问题与分析

    工作网络中,使用有线网卡访问外网,无线网卡需要连接wifi用于内部服务器(内网)。

    造成的问题是:由于Windows10的默认配置,wifi优先级高于有线网卡。连上wifi后实际上就访问不了外网了。

    网上大量的文章主要集中与两点:(1)“高级设置”–>“适配器与绑定”中修改顺序;(2)手动修改“接口跃点数”

    • 方法(1)的问题在于,Windows 10 已经弃用了这个功能。 Windows 7 还有
    • 方法(2)我曾经成功过,但是在目前的办公室网络中始终不行

    没有别的方法了,那就在这个方向上继续研究。

    查看路由表,发现有线网络与wifi网络的跃点数是不一样的

    PS C:\Windows\system32> route print
    IPv4 路由表
    ===========================================================================
    活动路由:
    网络目标        网络掩码          网关       接口   跃点数
              0.0.0.0          0.0.0.0       172.16.8.1     172.16.8.229    291
              0.0.0.0          0.0.0.0      192.168.5.1    192.168.5.103     55
            127.0.0.0        255.0.0.0            在链路上         127.0.0.1    331
            127.0.0.1  255.255.255.255            在链路上         127.0.0.1    331
      127.255.255.255  255.255.255.255            在链路上         127.0.0.1    331
           172.16.8.0    255.255.252.0            在链路上      172.16.8.229    291
         172.16.8.229  255.255.255.255            在链路上      172.16.8.229    291
        172.16.11.255  255.255.255.255            在链路上      172.16.8.229    291
          192.168.5.0    255.255.255.0            在链路上     192.168.5.103    311
        192.168.5.103  255.255.255.255            在链路上     192.168.5.103    311
        192.168.5.255  255.255.255.255            在链路上     192.168.5.103    311
                                   ...
                                   ...
      255.255.255.255  255.255.255.255            在链路上      172.16.8.229    291
      255.255.255.255  255.255.255.255            在链路上     192.168.5.103    311
    ===========================================================================
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    这里看前两行,172网段是访问外网的有线网络,192.168.5网段是wifi网络。可以发现wifi网络的跃点数只有55,小于有线网络的291,因此数据肯定是优先走wifi。

    这里不管怎么修改wifi的跃点数,会发现路由表里的跃点数始终跟设置的一样,而有线网的就是在290以上(这里的291实际是35+256,实际上说明有线网络的跃点数是35)。虽然后续的路由表里有显示wifi网相关的跃点在311(55+256),但是开头两行决定了wifi就是优先级高。

    我的设置

    经过上述分析,说明网上的修改跃点数的教程有瑕疵,他们都只设置20、30这样,但在我的网络环境里远远不够。因此我将wifi的跃点数设置到300,然后再看路由表中300生效了,而且比有线的291高了,到这里有线的优先级就高于wifi了,我就能正常上网了。

    但是新出现的问题是wifi网段访问内网服务器又不行了。这里假设内网服务器是192.168.189网段,那么只需要将这个内网网段加入系统的路由表就行了:

    route add 192.168.189.0 mask 255.255.255.0 192.168.5.1
    
    IPv4 路由表
    ===========================================================================
    活动路由:
    网络目标        网络掩码          网关       接口   跃点数
              0.0.0.0          0.0.0.0       172.16.8.1     172.16.8.229    291
              0.0.0.0          0.0.0.0      192.168.5.1    192.168.5.103    300
                                   ...
        192.168.189.0    255.255.255.0      192.168.5.1    192.168.5.103    301
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    也可以使用 -p 选项设置为永久路由。

    相关命令

    • Get-NetIPInterface
    • Set-NetIPInterface –InterfaceIndex “xx”–InterfaceMetric “xx” - (https://technet.microsoft.com/en-us/library/hh826125(v=wps.630).aspx)
    • route PRINT -4
    • route ADD <dest> MASK <mask> <gateway>
  • 相关阅读:
    ERROR: KeeperErrorCode = ConnectionLoss for /hbase/master
    从c++到Java,关于Java面向对象基础的学习(二)
    全球隐私计算技术发展概览
    Kubernetes(k8s第二部分)
    学习路之PHP--laravel数据库迁移
    c++实现Json配置数据序列化和反序列化
    企业知识库有什么价值?
    玩转ChatGPT:参考文献速查
    第十四章《多线程》第5节:线程同步
    plink2.0和plink1.9的忧伤笔记
  • 原文地址:https://blog.csdn.net/bluish_white/article/details/124824786