1. 前言

    这两天有个朋友公司有这麽一个情况,有个客户部署环境网络使用的是专线,完全内网,无法外网访问,确实安全,系统是Windows;离他们公司也很远,每次有问题都得开车7、8个小时才能到现场,酒店也不好找,来回一次开销不小;所以朋友就想能不能在有问题时,能远程解决问题

    朋友立刻想到了USB快捷wifi网卡,里面插电话卡的那种,这卡的话费相比每次来回开销毛毛雨。

    眼看网卡到了,兴奋的插上,习惯性打开浏览器….baidu.com,嘿,百度一下。。。成了。。

    就在这时转头看了下系统大屏(实时的),问题出来了,看板数据没有了。

    出于回滚的思路,朋友马上把wifi网卡拔掉了,嘿。。看板数据恢复了。

    基于这两个现象描述,我简单判断为网络层的问题。

  2. 查看全部路由

    接下来我让朋友把wifi卡插上,然后终端route print

    网络目标           网络掩码          网关            接口         跃点数
    0.0.0.0          0.0.0.0    192.168.216.1  192.168.216.100    291
    0.0.0.0          0.0.0.0       62.65.32.1      62.65.32.94    281
    

    明显“0.0.0.0”两条路由冲突,然后数据到了机器后,机器不知道发给哪个,所以大屏就没有数据了

    查看网卡信息:ifconfig

    以太网适配器 xxx 2:
    
       连接特定的 DNS 后缀 . . . . . . . :
       本地链接 IPv6 地址. . . . . . . . : x::x:x:x:x
       IPv4 地址 . . . . . . . . . . . . : 62.65.32.94
       子网掩码  . . . . . . . . . . . . : 255.255.255.128
       默认网关. . . . . . . . . . . . . : 62.65.32.1
    
    以太网适配器 以太网:
    
       连接特定的 DNS 后缀 . . . . . . . :
       本地链接 IPv6 地址. . . . . . . . : x::x:x:x:x
       IPv4 地址 . . . . . . . . . . . . : 192.168.216.100
       子网掩码  . . . . . . . . . . . . : 255.255.255.0
       默认网关. . . . . . . . . . . . . : 192.168.216.1
    
  3. 解决路由冲突:内网和外网使用不同的网卡

    接下来,我让朋友先把wifi的网卡改成静态IP(之前默认是DHCP)

    然后,删除这两条路由:route delete 0.0.0.0

    然后,添加0.0.0.0路由,加-p防止丢失

    route -p add 0.0.0.0 mask 0.0.0.0 192.168.216.1
    

    然后,添加62.65.0.0路由,同时也加-p

    route -p add 62.65.0.0 mask 255.255.0.0 62.65.32.1
    

    这时看数据看板就有数据

    但是还没完,还需要访问另外一个系统,ip是172.19.39.99,这个时候又访问不通了,再没有这个wifi网卡时是可以访问的,由此可以得到,之前访问Ip时,默认路由0.0.0.0是内网。此刻默认路由设置的是这个wifi的,所以无法访问到172.19.39.99

  4. 指定网段走指定网卡

    那么就在加一条172.19.39.0路由

    route -p add 172.19.39.0 mask 255.255.255.0 62.65.32.1
    

    此时,再使用浏览器,就可以访问了。


这里是win的OS,其他的OS遇到此类问题同样可以使用此思路。

扩展