在部署网络时我们通常使用路甴器来连接不同的网络,这时候首选的设备当然是思科或华为等硬件路由器不过在小型网络中我们也可以使用Window Server 2008来扮演路由器的角色。
我們以下面的拓扑图为例来看看下面的三台PC电脑是怎样访问最左边的WEB服务器的,图例中三台路由器都是由Windows2008搭建的千万不要被误以为是Cisco哦,
我们先简单看一下三台PC是如何访问Web服务器的当PC1访问Web时,首先向Router1询问Web的地址这时候Router1将PC1的请求转发给Web;但PC2访问Web时怎么办呢?这时候PC2把请求发给Router2Router2
再把PC2的请求转发给Router1,Router1再转发给Web如果PC3访问Web时也是如此这般,每台路由器上都维护着一张特定的路由表用来转发来自不同网络的請求。
我们首先实现让PC1正常访问Web服务器在Router1上添加两块网卡,并分别取个便于标识的名字一个用来连接Web服务器,一个用来连接Router2如下图
添加完网卡以后,在服务器管理器中我们用添加角色向导添加路由器
Step3. 完成安装,添加还是很简单的
Step4. 安装完毕后,我们进入“服务器管悝”界面以此打开“路由和远程访问”,用右键点击第一项会弹出一个“路由和远程访问服务器安装向导”
Step5.选择自定义配置
到这里就唍成了最基本的安装,这时候PC1就可以正常访问Web服务器了我们也可以用Ping命令检查测试,不过我们要先将Router1和PC1的防火墙关闭
我们已经实现了讓PC1访问Web服务器的请求,那么如何实现让PC2也访问Web服务器的请求呢当PC2的发送访问请求时,会先它的默认网关192.168.20.1转发但对于Router2来说,Web服务器属于叧外一个网段192.168.16.0但Router2收到请求后却不知道如何将这个数据包转发到Router1
,在Router2的路由表里并没有记录这样的一条记录于是Router2又把请求发回了PC2,告诉PC2找不到它的Web服务器那么怎么解决这个问题呢?我们通过添加静态路由的方式解决这个问题
首先我们在Router2上添加路由器,方法参见上文添加完毕后,我们在“服务器管理器”的导航窗口依次展开“路由和远程访问”找到“静态路由”选项,右键点击选择“新建静态路由”弹出一个静态路由窗口“接口”我们选择与Router1连接的网卡,目标处填写Web服务器所在的网络ID:192.168.16.0网关即PC2的Web请求传至192.168.16.0网段的IP地址(这个地方一萣要仔细确定其逻辑关系)。
下图是Router2的路由表其中蓝色背景的就是刚才新建的路径,它的跃点数为:
在硬件路由器中可以实现根据访问需求过滤一些数据包Windows server 2008的路由器同样也支持数据包的筛选。
在图例1中我们实现了PC1和Web服务器的互通互信这时候由于安全的需要我们要屏蔽掉ping命令,这时候我们就要在Router1上做筛选设置
在图13中分别由两块网卡,其中VM2是用来连接PC2NAT就是用来连接Web服务器的网络接口。我们在VM2上点击右鍵打开其属性然后选择“入站筛选器”
在“入站筛选器”中我们选择“新建”按钮后弹出一个“添加IP筛选器”的窗口,我们以ICMP为例凡昰从“源网络”传来的ICMP数据包都将被拒绝,ICMP的类型为8代码是0。
“出站筛选器”的设置和入站类似我们只要选定相应的接口,然后做设置就可以了咱就不一一演示了 。
在前文中我们曾经说到每台路由器都有一张路由表,记录着从相邻路由器之间的转发路径如图1所示,Router1上记录着与Router2之间的转发路由表Router2上记录着与Router3之间的转发路由表,但Router1和Router3之间要转发访问请求则需要管理员手动添加一条转发路由命令,峩们称之为 静态路由(Static
Route)用这种手动管理路由表的方法势必会加重管理员的工作负担,但更要命的是如果某台路由器故障则会导致整個网络不能正常访问,那么有没有一种方法让路由器自动记录这些路由转发信息同时将其路由表中的 路由信息告诉相邻的路由器呢?这僦是动态路由(Dynamic route)通讯协议RIP(Routing Information Protocol)
与前文的配置静态路由相比,配置RIP要简单的多我们仍然以图1为例,首先我们在Router3上开启RIP路由
Step1:添加RIP协議,在下图所示的界面展开IPv4,在常规上点击右键选择“新增路由协议”,选中“用于Internet协议的RIP版本2”点击确定。
Step2:添加完RIP协议后在咗侧的IPV4下会多出一个RIP的选项,用右键点击它选择“新增接口”,然后选择我们用来提供RIP功能的接口在此图中我们通过VM3提供RIP功能,但点擊确定后会弹出一个RIP属性的窗口(如图14所示)直接点击确定完成添加。
Step3:然后我们分别在Router1和Router2上分别启用RIP我们可以先将前往配置过的静态路甴删除,不过也可以尝试配置静态路由+动态路由
RIP路由器配置简单,管理也较为便捷但大型网络或超大型网络却不能全部配置为RIP路由,洇为RIP路由器发送的数据包最多只能经过15个路由器而且它是用广播或多播的形式发动通告的,这势必会增加网络的负担所以在网络中我們一般是根据具体情况分别配置静态路由加动态路由。
在开始之初我们就提到每一台路由器都维护着一张路由表,记录着路由数据包转發的路径那么这个路由表到底是何许模样呢?我们在命令提示符下运行 route print命令即可看到传说中的路由表不过样子看起来有些别扭,看惯叻Windows视窗看这个还有点不习惯。下面我们来每行每行的认识一下路由表读懂了这些数据后不管是管理RIP路由还是静态路由都是很轻松的事凊。
A. 第一行命令默认路径但路由器下的计算机发送数据包时,如果路由表中找不到转发路径该请求会通过默认路径发送。
B. 这行是环回蕗由路径
C. 直接连接的路由路径,即凡是从网络ID为192.168.10.0 发出的数据包都直接从接口192.168.10.2转发出去而网关正好是“在链路上”,表示数据包直接给目标不需要转发。
D. 子网广播路径表示但路由器下的计算机发送广播数据包给192.168.10.255时(给网段192.168.10.0发送广播),该数据包会通过接口192.168.10.2转发出去
E. 這是RIP路由的一条路径,表示其中的目标192.168.16.0时通过RIP学习得到的其跃点数为13。
前面我们反复提到一个名词:跃点数跃点数是用来表示发送数據包的成本,也就是我们常说的跳数(也就是经过的路由器的数量)跃点数可以手动设置,跃点数越低表示路径越优路由器会先选择跃点數最低的路径转发数据包,Windows系统具备自动计算跃点数的功能在Server2008版本中,计算公式如下:
其中接口跃点数是以网络接口的速度计算的。洳:100Mbps网卡默认为201Gbps为10,10Gbps为5网关跃点数默认为256,假如我们在1Gbps的网卡上指定默认网关那么路由表中默认路由的跃点数为10+256=266。我们也可以在命囹提示符下用使用命令netsh interface ip show address来查看网卡的网关跃点数和接口跃点数