1. 前言
很多人使用笔记本,用网线接入公司或学校的内网。然而内网有诸多限制,比如禁止使用公网或者禁止某些公网的访问等。这时候,很多人就会想到笔记本无线网卡连手机wifi的方式上外网。当然,还有另一种方式,如果内网能够访问到某个代理服务器,并且这个代理服务器能够无限制访问公网,那么这种方式也可行的。但本文仅讨论通过前面第一种方式。这种方式对于Windows 7以上版本都是实践可行的。相信其他版本理论上也可行。
2. 有线网卡配置
1) 进入控制面板->网络和 Internet->网络连接,双击打开内网相应网络的图标
2) 打开属性
3) 选择Internet协议版本4(TCP/IPv4)并打开
采用手动配置IP地址的方式,进行地址配置。(注意:如果不知道使用什么IP地址,可以先通过自动获取的,然后用命令行工具ipconfig命令查看分配到的IP和子网掩码,记下来。) 特别注意的是,默认网关这里不要填写任何东西。
2. 无线网卡配置
1) 开启手机热点,笔记本电脑接入手机wifi即可。
3. 路由表配置
3.1 查看路由表
1) 输入route print, 以笔者为例,可以看到如下三部分
接口列表 IPv4路由表 IPv6路由表
2) 说明
接口列表可以理解为网络接口,由于笔者还安装了虚拟机等,于是列表中还包含了虚拟网卡。
IPv4路由表又分为活动路由和永久路由。IPv6路由表不在本文讨论范围。
3) IPv4路由表术语解释
由于控制台现实的数据对其效果不佳,于是整理了一下表格便于查看。
网络目标 | 网络掩码 | 网关 | 接口 | 跃点数 |
0.0.0.0 | 0.0.0.0 | 192.168.43.1 | 192.168.43.133 | 55 |
0.0.0.0 | 0.0.0.0 | 192.168.43.69 | 192.168.43.133 | 56 |
10.0.0.0 | 255.0.0.0 | 10.1.53.254 | 10.1.53.29 | 36 |
10.1.53.0 | 255.255.255.0 | 在链路上 | 10.1.53.29 | 291 |
10.1.53.29 | 255.255.255.255 | 在链路上 | 10.1.53.29 | 291 |
10.1.53.255 | 255.255.255.255 | 在链路上 | 10.1.53.29 | 291 |
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 |
183.60.124.9 | 255.255.255.255 | 192.168.43.69 | 192.168.43.133 | 57 |
192.168.17.0 | 255.255.255.0 | 在链路上 | 192.168.17.1 | 291 |
192.168.17.1 | 255.255.255.255 | 在链路上 | 192.168.17.1 | 291 |
192.168.17.255 | 255.255.255.255 | 在链路上 | 192.168.17.1 | 291 |
192.168.43.0 | 255.255.255.0 | 在链路上 | 192.168.43.133 | 311 |
192.168.43.133 | 255.255.255.255 | 在链路上 | 192.168.43.133 | 311 |
192.168.43.255 | 255.255.255.255 | 在链路上 | 192.168.43.133 | 311 |
192.168.121.0 | 255.255.255.0 | 在链路上 | 192.168.121.1 | 291 |
192.168.121.1 | 255.255.255.255 | 在链路上 | 192.168.121.1 | 291 |
192.168.121.255 | 255.255.255.255 | 在链路上 | 192.168.121.1 | 291 |
224.0.0.0 | 240.0.0.0 | 在链路上 | 127.0.0.1 | 331 |
224.0.0.0 | 240.0.0.0 | 在链路上 | 192.168.121.1 | 291 |
224.0.0.0 | 240.0.0.0 | 在链路上 | 192.168.17.1 | 291 |
224.0.0.0 | 240.0.0.0 | 在链路上 | 10.1.53.29 | 291 |
224.0.0.0 | 240.0.0.0 | 在链路上 | 192.168.43.133 | 311 |
255.255.255.255 | 255.255.255.255 | 在链路上 | 127.0.0.1 | 331 |
255.255.255.255 | 255.255.255.255 | 在链路上 | 192.168.121.1 | 291 |
255.255.255.255 | 255.255.255.255 | 在链路上 | 192.168.17.1 | 291 |
255.255.255.255 | 255.255.255.255 | 在链路上 | 10.1.53.29 | 291 |
255.255.255.255 | 255.255.255.255 | 在链路上 | 192.168.43.133 | 311 |
a) 网络目标和网络掩码:
即目标地址。注意,目标地址可以是一个具体的IP地址,也可以是有共同属性的IP集合。网络目标和网络掩码必须合起来你看才有意义。网络目标和网络掩码决定了路由的范围。
例如10.1.53.0 255.255.255.0表示10.1.53.1~10.1.53.254的网络范围。
网络目标0.0.0.0和网络掩码0.0.0.0表示默认路由,即如果没有找到合适的路由,默认使用的路由。
网络目标10.0.0.0和网络掩码255.0.0.0表示路由汇总,即符合这条规则的目标地址,走这条路由。例如访问10.1.1.1,10.1.1.2等等,都可以走这条路由规则。
网络目标255.255.255.255和网络掩码255.255.255.255表示广播路由,用于向本网内的所有节点通信。
b) 网关
可以理解为相应网络的路由器接口地址。例如以笔者电脑为例,10.1.53.254表示内网网关,192.168.43.1表示手机热点上的网关。
c) 接口
本机网卡的IP地址
d) 跃点数
可以理解为路由表优先级,数值越低,表示优先级越高
路由选择由以下规则:
不同范围的,由小范围到大范围,相同范围的,对比跃点数。
例如有以下路由表(接口192.168.43.133是无线网卡路由,接口10.1.53.29是有线网卡路由):
网络目标 | 网络掩码 | 网关 | 接口 | 跃点数 |
0.0.0.0 | 0.0.0.0 | 192.168.43.1 | 192.168.43.133 | 55 |
10.0.0.0 | 255.0.0.0 | 10.1.53.254 | 10.1.53.29 | 36 |
10.1.53.0 | 255.255.255.0 | 10.1.53.254 | 10.1.53.29 | 291 |
10.1.53.29 | 255.255.255.255 | 192.168.43.1 | 192.168.43.133 | 100 |
10.1.53.30 | 255.255.255.255 | 192.168.43.1 | 192.168.43.133 | 100 |
10.1.53.30 | 255.255.255.255 | 10.1.53.254 | 10.1.53.29 | 20 |
如果要访问10.1.53.30这个目标地址,由于路由表上可以查到两条记录,对比跃点数
10.1.53.30 | 255.255.255.255 | 10.1.53.254 | 10.1.53.29 | 20 |
这一条更低,所以走这个路由,也就是有线网卡的路由。
如果要访问10.1.53.29这个地址,因为有唯一的路由对应,所以选择这条路有。
10.1.53.29 | 255.255.255.255 | 192.168.43.1 | 192.168.43.133 | 100 |
如果要访问10.1.53.28这个地址,由于没有直接的路由对应,但存在最近的路由汇总,
10.1.53.0 | 255.255.255.0 | 10.1.53.254 | 10.1.53.29 | 291 |
所以走这条路由。
如果要访问10.2.53.28这个地址,由于没有直接的路由对应,但存在最近的路由汇总,
10.0.0.0 | 255.0.0.0 | 10.1.53.254 | 10.1.53.29 | 36 |
3.2 删除默认路由条目
因为我要重新配置默认路由,所以执行route delete 0.0.0.0命令。操作完成后,再执行route print,可以看到默认路由0.0.0.0已经被删除
3.3 查看无线网卡网关信息。
执行 ipconfig,可以看到我网卡的信息。关键记住网关
默认网关. . . . . . . . . . . . . : 192.168.43.1
3.4 增加默认路由,默认访问公网。
route add -p 0.0.0.0 mask 0.0.0.0 192.168.43.1
参数-p的作用表示添加永久路由,这样不用每次启动要重设。
执行完成后执行route print, 可以看到永久路由已经添加了默认路由表。
3.5 查看有线网卡网关信息
可以通过配置为自动获取IP方式,然后执行ipconfig命令查看。操作步骤与查看无线网卡雷同,这里不再描述。
3.6 增加有线网卡路由汇总
这里以笔者的网络为例,笔者公司的内网是10开头的A类网络。笔者连接的网关地址是
10.1.53.254
执行以下命令:
route add –p 10.0.0.0 mask 255.0.0.0 10.1.53.254这样,所有10.*.*.*的地址,就经过内网的网络了。
3.7 增加例外公网地址到内网路由
以上方式是很多网上介绍的方法。但如果你的内网本身能够支持访问一部分公网,只是有白名单机制,让你不能随心所欲的访问每一个公网地址。怎么办?其实,如果掌握路由的原理,完全可以配置某些常用网址从内网走,这样就不会浪费了你的手机流量了。另外,通常情况下公司的门户网站的访问,走内网的网速,也比走公网的网速要快。
以下,将以xxxxxx为例,假设内网可以访问xxxxxx的官网。
3.7.1 获取例外网站IP
ping www.xxxxxx.com, 可以看到门户网站的公网ip地址
121.40.38.142
3.7.2 跟踪路由信息(默认路由,无线网卡)
tracert www.xxxxxx.com
可以看到第一个跳跃是走无线网卡
3.7.3 增加路由条目(有线网卡)
route add –p 121.40.38.142 mask 255.255.255.255 10.1.53.254
执行后执行route print
3.7.4 跟踪确认路由是否生效
怎么知道增加后,访问就是走内网地址呢?其实很简单
tracert www.xxxxxx.com,可以看到我的第一跳跃是内网网卡的接口。
3.7.5 增加路由条目(无线网卡)
现在假设把电脑带回家了,没有了有线环境。但由于上面已经配置了有限网卡的配置,那么在家里我要访问www.xxxxxx.com可以吗?
事实上,当其中的路由接口不通的时候,系统会尝试选择其它符合路由规则的路由,也就是默认路由。所以在家是可以访问的。但我们依然可以优化,帮系统做决定。
route add -p 121.40.38.142 mask 255.255.255.255 192.168.43.1 METRIC 100
这样,由于外网的跳跃数是100,即优先级低于内网,所以在双网情况下走内网,在仅有无线网的情况下,直接走外网路由。