路由器组网练习:
问题:如下图, 给定3个路由器(各有3个千兆口),4台PC机,6个网段,怎么组网可以使得各主机之间能正常通讯。
解答思路:
1 首先将路由器和主机之间的连接线都连接好,真实机器上PC机与路由器之间用的是直通线,而路由器之间用的是交叉线,此处思科模拟器上用直通线不通,就用交叉线连接,连接之后如下图,可以看到各个点之间是不通的,因为路由器的各个端口是默认为关闭的,可以用命令配置端口,并打开端口使得各端口之间电器特性导通。
2 将各个PC机指定好IP地址(根据网段分配),注意必须分配默认网关,因为PC机连接到路由器的端口处就是网关地址,分配路由器与PC机连接端口时需要指定网关地址,此处可以将网关都设为各网段的250的IP地址,例如:192.168.1.250 / 192.168.2.250 / 192.168.3.250 / 192.168.4.250 设为4个PC机的网关地址;192.168.1.1 /192.168.2.1 /192.168.3.1 / 192.168.4.1设为4个PC机的IP地址;设置路由器1的右端点Gig0/2 IP:10.10.12.1;路由器2的左端点Gig0/1 IP:10.10.12.2 右端点Gig0/2 IP:10.10.23.1;路由器3的左端点Gig0/1 IP:10.10.23.2;然后开始配置路由器与PC机相连接的端口的IP地址:
第一步:给各个PC主机配置IP地址和默认网关;因为路由器的各个端口是默认关闭的,所以首先应该打开路由的的各个端口:
路由器1:选no进入路由器命令 //[yes]*[no]选择是否进入对话,选no进入普通模式
route>enable //进入特权模式
route#configure terminal //进入全局配置模式
route(config)#hostname R1 //更改路由器1的主机名为R1
R1(config)#interface gigabitEthernet 0/0 //进入千兆口GigabitEthernet 0/0的端口配置模式
R1(config-if)#no shutdown //打开GigabitEthernet 0/0,此时可以看到GigabitEthernet 0/0连接的PC线路变绿色,线路电路通路
R1(config-if)#exit //退出GigabitEthernet 0/0端口配置模式
R1(config)#interface gigabitEthernet 0/1 //进入千兆口GigabitEthernet 0/1的端口配置模式
R1(config-if)#no shutdown //打开GigabitEthernet 0/1,此时可以看到GigabitEthernet 0/1连接的PC线路变绿色,线路电路通
R1(config)#interface gigabitEthernet 0/2 //进入千兆口GigabitEthernet 0/2的端口配置模式
R1(config-if)#no shutdown //打开GigabitEthernet 0/2,此时看不到GigabitEthernet 0/2连接的PC线路变绿色,线路电路不通,因为端口连接另一个路由器的端口没有打开,后面打开路由器2的GigabitEthernet0/1时线路会通
路由器2: 选no进入路由器命令 //[yes]*[no]选择是否进入对话,选no进入普通模式
route>enable //进入特权模式
route#configure terminal //进入全局配置模式
route(config)#hostname R2 //更改路由器2的主机名为R2
R2(config)#interface gigabitEthernet 0/0 //进入千兆口GigabitEthernet 0/0的端口配置模式
R2(config-if)#no shutdown //打开GigabitEthernet 0/0,此时可以看到GigabitEthernet 0/0连接的PC线路变绿色,线路电路通路
R2(config-if)#exit //退出GigabitEthernet 0/0端口配置模式
R2(config)#interface gigabitEthernet 0/1 //进入千兆口GigabitEthernet 0/1的端口配置模式
R2(config-if)#no shutdown //打开GigabitEthernet 0/1,此时可以看到GigabitEthernet 0/1连接的第一台路由器线路变绿色,线路电路通
R2(config)#interface gigabitEthernet 0/2 //进入千兆口GigabitEthernet 0/2的端口配置模式
R2(config-if)#no shutdown //打开GigabitEthernet 0/2,此时与路由器3连接的GigabitEthernet 0/2线路不通,需要路由器3的Gig0/1打开才会通
路由器3:选no进入路由器命令 //[yes]*[no]选择是否进入对话,选no进入普通模式
route>enable //进入特权模式
route#configure terminal //进入全局配置模式
route(config)#hostname R3 //更改路由器2的主机名为R3
R3(config)#interface gigabitEthernet 0/0 //进入千兆口GigabitEthernet 0/0的端口配置模式
R3(config-if)#no shutdown //打开GigabitEthernet 0/0,此时可以看到GigabitEthernet 0/0连接的PC线路变绿色,线路电路通路
R3(config-if)#exit //退出GigabitEthernet 0/0端口配置模式
R3(config)#interface gigabitEthernet 0/1 //进入千兆口GigabitEthernet 0/1的端口配置模式
R3(config-if)#no shutdown //打开GigabitEthernet 0/1,此时可以看到GigabitEthernet 0/1连接的第一台路由器线路变绿色,线路电路通
电器通路后效果如图:
虽然电路通路,但是用ping命令查看时,PC0与PC2/PC3之间是不通的,因为路由器没有配置各端口IP网关,和端口的IP地址,所各PC之间信号不通;
这里用PC机0去pingPC机1,2和3是ping不通的,相互任意两台之间都是不通的。
第二步:给路由器配置端口IP地址(连接PC主机的端口配置PC主机的默认网关):
如上图可以用命令:R1#show ip route来查看路由表里面的信息,可以看到Gateway of last resort is not set,端口IP地址和端口默认网关都没有设置;
配置命令如下:
路由器1:选no进入路由器命令 //[yes]*[no]选择是否进入对话,选no进入普通模式
route>enable //进入特权模式
route#configure terminal //进入全局配置模式
route(config)#hostname R1 //更改路由器1的主机名为R1
R1(config)#interface gigabitEthernet 0/0 //进入千兆口GigabitEthernet 0/0的端口配置模式
R1(config-if)#ip address 192.168.1.250 255.255.255.0 //配置Gig0/0端口ip为192.168.1.250 255.255.255.0,也就是PC机0的网关地址。
R1(config-if)#exit //退出千兆口Gig0/0端口配额模式
R1(config)#interface gigabitEthernet 0/1 //进入千兆口GigabitEthernet 0/1的端口配置模式
R1(config-if)#ip address 192.168.2.250 255.255.255.0 //配置Gig0/1端口ip为192.168.2.250 255.255.255.0,也就是PC机1的网关地址。
R1(config-if)#exit //退出千兆口Gig0/1端口配额模式
R1(config)#interface gigabitEthernet 0/2 //进入千兆口GigabitEthernet 0/2的端口配置模式
R1(config-if)#ip address 10.10.12.1 255.255.255.0 //配置Gig0/2端口ip为10.10.12.1 255.255.255.0,也就是路由器1的Gig0/2端口 路由器2地址。
R1(config-if)#exit //退出千兆口Gig0/2端口配额模式
路由器2:选no进入路由器命令 //[yes]*[no]选择是否进入对话,选no进入普通模式
route>enable //进入特权模式
route#configure terminal //进入全局配置模式
route(config)#hostname R2 //更改路由器2的主机名为R2
R2(config)#interface gigabitEthernet 0/0 //进入千兆口GigabitEthernet 0/0的端口配置模式
R2(config-if)#ip address 192.168.3.250 255.255.255.0 //配置Gig0/0端口ip为192.168.3.250 255.255.255.0,也就是PC机2的网关地址。
R2(config-if)#exit //退出千兆口Gig0/0端口配额模式
R2(config)#interface gigabitEthernet 0/1 //进入千兆口GigabitEthernet 0/1的端口配置模式
R2(config-if)#ip address 10.10.12.2 255.255.255.0 //配置Gig0/1端口ip为10.10.12.2 255.255.255.0,也就是路由器1与路由器2网段的端口地址。
R2(config-if)#exit //退出千兆口Gig0/1端口配额模式
R2(config)#interface gigabitEthernet 0/2 //进入千兆口GigabitEthernet 0/2的端口配置模式
R2(config-if)#ip address 10.10.23.2 255.255.255.0 //配置Gig0/2端口ip为10.10.23.2 255.255.255.0,也就是路由器2与路由器3网段的端口地址。
R2(config-if)#exit //退出千兆口Gig0/2端口配额模式
路由器3:选no进入路由器命令 //[yes]*[no]选择是否进入对话,选no进入普通模式
route>enable //进入特权模式
route#configure terminal //进入全局配置模式
route(config)#hostname R3 //更改路由器3的主机名为R3
R3(config)#interface gigabitEthernet 0/0 //进入千兆口GigabitEthernet 0/0的端口配置模式
R3(config-if)#ip addres192.168.4.250 255.255.255.0 //配置Gig0/0端口ip为192.168.4.250 255.255.255.0,也就是PC机3的网关地址。
R3(config-if)#exit //退出千兆口Gig0/0端口配额模式
R3(config)#interface gigabitEthernet 0/1 //进入千兆口GigabitEthernet 0/1的端口配置模式
R3(config-if)#ip address 10.10.23.3 255.255.255.0 //配置Gig0/1端口ip为10.10.23.3 255.255.255.0,也就是路由器2与路由器3网段的端口地址。
R3(config-if)#exit //退出千兆口Gig0/1端口配额模式
配置完命令以后发现PC之间依然不通,如下图
如上图用IP为192.168.1.1分别去ping192.168.2.1、192.168.3.1、192.168.4.1的主机,发现只有192.168.2.1的主机可以ping通,为什么呢?
因为这几个主机不在同一网段,192.168.1.0 /24网段和192.168.2.0 /24网段的主机实际上是连在同一个路由器上的,其路由路经是可以找寻的,其他网段PC没有连接到这个路由器,路由器是找不到的,所以需要有路由路经,这里可以手动写入静态路由路经。
配置命令如下:
路由器1 :
R1(config)#ip route 192.168.3.0 255.255.255.0 g 0/2 //如果路经用的是端口的话选自己路由器连接的端口,这种端口方式其实是利用了下一跳的端口作为代理ARP去完成自己的路由路径,有个弊端,就是下一跳的端口如果没有打开代理ARP的话,该路径则不可用,所以一般不用这种方式写静态路由。
上面的命令也可以写成:
R1(config)#ip route 192.168.3.0 255.255.255.0 10.10.12.2 //这种是用IP地址方式精确定位,要写从自己路由出去下一跳的IP地址,IP192.168.3.0可以精确到PC机的IP也可以写到PC机所在的网关,也可以写PC所在的网段,这条命令写到对象的网段。这是常用的写IP路由的方式
因为R1是边界路由器,所有的路经都会从IP10.10.12.2出去,所以上面的命令可以用默认路由路经的方式,即也可以写成:
R1(config)#ip route 0.0.0.0 0.0.0.0 10.10.12.2 //0.0.0.0 0.0.0.0 这个IP地址包含了所有网段的所有路径,出口为IP10.10.12.2,这种写法是默认只有一条路经端口可以出去的前提下,如果路由器连接了多个路由器,这种写法不可用
R1(config)#ip route 192.168.4.0 255.255.255.0 10.10.12.2 //写下去往192.168.4.0 /24 网段的路由路径
由于192.168.2.0 /24 网段在同一个路由上面,所以这个网段自己路由是可以找到的,所以不用写。
路由器2 :
R2(config)#ip route 192.168.1.0 255.255.255.0 10.10.12.1 //去往192.168.1.0 /24 网段的路由路径
R2(config)#ip route 192.168.2.0 255.255.255.0 10.10.12.1 //去往192.168.2.0 /24 网段的路由路径
R2(config)#ip route 192.168.4.0 255.255.255.0 10.10.23.3 //去往192.168.4.0 /24 网段的路由路径
路由器3 :
R3(config)#ip route 192.168.1.0 255.255.255.0 10.10.23.2 //去往192.168.1.0 /24 网段的路由路径
R3(config)#ip route 192.168.2.0 255.255.255.0 10.10.23.2 //去往192.168.2.0 /24 网段的路由路径
R3(config)#ip route 192.168.3.0 255.255.255.0 10.10.23.2 //去往192.168.4.0 /24 网段的路由路径
由于出去的路径只有经过IP端口10.10.23.2所以上面的3条路由路径可以写成下面1条:
R3(config)#ip route 0.0.0.0 0.0.0.0 10.10.23.2 //去往所有的地址路径都经过IP10.10.23.2
到此这段网络就可以实现各个PC机互通了
备注:在写命令期间如果写错了,结束域名解析用ctrl+shift+6快捷健,也可以关闭域名解析搜索功能,这样打错后不会有错误提示。
关闭域名解析功能:
SW(config):#no ip domain-lookup //在全局配置模式下关闭IP域名解析功能;
关闭窗口口信息弹出打断命令:
SW:#show users //查看当前用户位与那个端口,“ * “所在的端口就是当前操作端口;例如位与console口;
SW(config):#Interface line console 关闭console口的log信息弹出;
SW(config-if):#Logging synchronous
查看易路由路径:show ip route
总结:1 写路由路径时,下一跳可以写自己路由的端口也可以写连接对端端口的IP地址,写自己路由端口的前提时对端端口打开了ARP代理功能,这种方式不安全,所以一般会写下一跳端口的IP地址
2 路由器连接别的路由设备的出口只有一个时,可以采用默认路由的方式,0.0.0.0 0.0.0.0 x.x.x.x 即所有的IP地址路由路径都经过x.x.x.x
一个完美的ENDing......