给主机双网卡配置双网关,修改Windows路由表

问题背景:

1 一般情况下,Windows主机就算有多个网卡,在默认情况下,只能有一个网卡可以配置网关。


2 在双网卡只配置一个网关的情况下,如果每个网卡值负责访问自己网段内的IP地址,这样是不会出现什么异常现象的。

比如Windows主机双网卡配置如下:

  • 网卡1:10.129.28.21  255.255.255.0  10.129.28.1
  • 网卡2: 10.129.24.22  255.255.255.0

此时,网卡1配置了网关,但是网卡2没有配置网关(因为默认情况下只能配置一个网关)。

此时如果

  • 网卡1 去访问10.129.28.N
  • 网卡2 去访问10.129.24.N

并不会有我们问题,一切正常。


3 如果此时,

  • 网卡1要去访问 10.131.30.11
  • 网卡2要去访问172.16.101.46

那么,网络将会出现异常情况,比如连接不上,或者是丢包等。

这时候,我们需要配置网卡各自的路由,使其项目不影响。

此时,我们先(内心)设定好网卡的参数

网卡1: IP 为 10.129.28.21  掩码为 255.255.255.0  网关为 10.129.28.1

网卡2:IP 为10.129.24.22  掩码为 255.255.255.0 网关为 10.129.24.254

然后cmd窗口下输入一下命令

route delete 0.0.0.0 mask 0.0.0.0 10.129.28.1
route delete 0.0.0.0 mask 0.0.0.0 10.129.24.254
route add 10.129.28.0 mask 255.255.255.0 10.129.28.1 metric 10 -p
route add 10.131.30.0 mask 255.255.255.0 10.129.28.1 metric 20 -p
route add 10.129.24.0 mask 255.255.255.0 10.129.24.254 metric 30 -p
route add 172.16.101.0 mask 255.255.255.0 10.129.24.254 metric 40 -p

上面六条命令执行完成后,输入命令:

route print

得到如下结果

给主机双网卡配置双网关,修改Windows路由表_第1张图片

代码解释如下:

这里是用在 Windows 系统中的 netsh 命令行工具。每一条命令都在对 Windows 的路由表进行修改。


route delete 0.0.0.0 mask 0.0.0.0 10.129.28.1:这个命令会从路由表中删除所有以10.129.28.1为下一跳的路由。

route delete 0.0.0.0 mask 0.0.0.0 10.129.24.254:这个命令会从路由表中删除所有以10.129.24.254为下一跳的路由。

route add 10.129.28.0 mask 255.255.255.0 10.129.28.1 metric 10 -p:这个命令会在路由表中添加一个新的静态路由,目标网络是10.129.28.0/24,下一跳地址是10.129.28.1,并设置 metric(度量)为10。-p参数表示这条路由是持久的,即使重启系统也不会消失。

route add 10.131.30.0 mask 255.255.255.0 10.129.28.1 metric 20 -p:这个命令会在路由表中添加一个新的静态路由,目标网络是10.131.30.0/24,下一跳地址是10.129.28.1,并设置 metric(度量)为20。

route add 10.129.24.0 mask 255.255.255.0 10.129.24.254 metric 30 -p:这个命令会在路由表中添加一个新的静态路由,目标网络是10.129.24.0/24,下一跳地址是10.129.24.254,并设置 metric(度量)为30。

route add 172.16.101.0 mask 255.255.255.0 10.129.24.254 metric 40 -p:这个命令会在路由表中添加一个新的静态路由,目标网络是172.16.101.0/24,下一跳地址是10.129.24

你可能感兴趣的:(windows)