首页 > 网管 > 路由交换 > 正文

基于windows的源地址路由设置的3种方法

2020-06-22 13:15:13
字体:
来源:转载
供稿:网友
有一些情况下,目的路由满足不了我们的要求,而需要做源地址路由。比如我们的服务器有多个网关的情况,而目的端的IP地址无法确定,做不了目的路由,数据就会从默认的路由出去,这样数据肯定会有问题的,基于windows的源地址路由设置的解决办法如下
 
 

  一般的路由设置方式为目的路由,即对目的IP做匹配,若满足一定的规则,则把数据从某个网口发出去(同时也决定了目的MAC地址)。源地址路由,顾名思义,对源地址IP做匹配,若满足一定的规则,则把数据从某个网口发出去。

  在linux上,可以做ip route2工具做源地址路由设置,而windows上是没有类似的工具包的。有一些情况下,目的路由满足不了我们的要求,而需要做源地址路由。

  如我们的服务器有多个网关的情况(甚至同一个网卡下有多个网段地址,对应了多个网关),而目的端的IP地址无法确定(比如设备上传的IP不确定),做不了目的路由,数据就会从默认的路由出去,这样就会导致数据从网关2进来,回复的数据从网关1出去,这样数据肯定会有问题的。

  解决此问题有多个方案:

  1,在路由器上做源地址转换,把外部IP转换成内部IP

  1)目前在华为路由器上支持此功能,而在思科路由器上面没有找到

  2)此方案的效率不是最优的,可能由路由器带来比较重的负担

  3)内部的服务看不到真实的外部IP

  2,在服务器上新建虚拟机,化解多个网关的问题

  1)虚拟机比较费资源,效率不是最优的

  2)虚拟机的稳定性比较差

  3,在服务器上做源地址路由

  1)目前在linux上有现成的工具,而windows上没有2)windows上需要写ndis驱动,需要开发

  3)此方案在效率上是最优的,对应用也是不可见的。

  我采用了第3种:方案:在服务器上做源地址路由,在这里我把源码给大家分享出来。

  代码中的配置还不是很灵活,但已经在实际环境中使用过了(windows2003sp1,windows2008r2)。

  以上就是基于windows的源地址路由设置的三个方法,谢谢阅读,如果帮到了您,不妨分享给更多的朋友,让他们受惠。请继续关注VEVB武林网,我们会努力分享更多优秀的文章。



发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表