目录
一、什么是路由器
路由表的形成
二、路由器转发数据包
三、路由器与主机直接的连接原理
路由:是从源主机到目标主机的转发过程(转发数据,寻找地址和选择转发的最佳路径)
路由器的工作原理:根据路由表转发数据,当一个数据包经过,路由器会根据目的IP地址去查找路由表,根据路由表的配置去寻找转发数据的出口。
①直连路由(交换机的端口(端口需要UP)上配置上的IP地址,路由器会自动学习端口上的网段)
②静态路由(认为的去安装路由表的信息,一项一项去填写,由工程师手动去输入配置)
③动态路由(路由器之间通过报文向外宣告自己的直接网段,去互相学习记录)
直连网段就是接口相连的网段(前后单个或者多个网段)
配置静态路由命令:ip route-static 想传输的网段 子网掩码 下一跳地址)
[R1]ip route-static 11.0.0.1 24 10.0.0.2
下一跳地址(下一个到达的路由器的接收口的IP地址)
配置静态路径(包括设置优先级)的命令:
ip route-static 想传输的网段 子网掩码 下一跳地址 preference 优先级数值
[R1]ip route-static 11.0.0.1 24 10.0.0.2 preference 70
后面的 “ 70 ” 代表优先级数值,数值越小,优先级越高
路由器转发数据包的封装过程
①主机A想要和主机B进行通讯,主机A会发送一个数据包
源IP地址:192.168.1.2
目的IP地址:192.168.2.2
源mac地址:11-11
目的mac地址:22-22
②第一个数据包到达路由器A,路由A会拆包读取地址信息,并且查询路由表,发现数据包应该从路由器A的E1口传输出去,路由器A会重新封装数据包进行发送
源IP地址:192.168.1.2
目的IP地址:192.168.2.2
源mac地址:33-33
目的mac地址:44-44
③第二个数据包到达路由器B,拆包分析其中的IP地址,再次查询路由表,发现数据包应该从路由B的E0口发送出去,路由器B会重新封装数据包
源IP地址:192.168.1.2
目的IP地址:192.168.2.2
源mac地址:55-55
目的mac地址:66-66
使用eNSP将主机和路由器相互连接传输测试实验,测试路由器工作原理和数据传输连接原理,首先创建两个主机,分别为主机A和主机B,并给他们预设一下IP地址和网段,用Copper线相互连接起来。(连接后,框选所有设备启动)
我们打开PC 1和PC 2设置其IP地址,网关和子网掩码,并且给每个接口分配IP地址
网关则是主机位与下一个交换机接口的IP地址的主机位相同保持一致
设置好主机的基础配置我们打开路由的操作面板,并且设置R1路由器的接口地址和传输目的地址、源地址。
我们用sys命令将其重命名为R1路由器
命令:sys 重新命名的名字
[Huawei]sys R1
[R1]
其次输入int命令,进入g0/0/0和g0/0/1接口,为其创建IP地址和目的IP地址
命令:int 接口型号+接口号 (进入指定接口)
命令:ip address 接口IP地址 子网掩码 (为接口添加IP地址)
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.1.2 24
[R1-GigabitEthernet0/0/0]q
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]ip address 12.0.0.1 24
我们退回到系统视图内,使用ip route-static命令进行连接
命令:ip route-static 目的IP地址 子网掩码 下一跳地址
[R1-GigabitEthernet0/0/0]q
[R1]ip route-static 192.168.2.2 24 12.0.0.2
Info: The destination address and mask of the configured static route mismatched
, and the static route 192.168.2.0/24 was generated.
[R1]
我们可以通过命令查询一下我们设置好的路由表信息
命令:display ip routing-table (查询路由表信息)
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 16 Routes : 16
Destination/Mask Proto Pre Cost Flags NextHop Interface
0.0.0.0/0 Static 60 0 RD 10.0.0.2 GigabitEthernet
0/0/1
10.0.0.0/24 Direct 0 0 D 10.0.0.1 GigabitEthernet
0/0/1
10.0.0.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
10.0.0.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
11.0.0.0/24 Static 70 0 RD 10.0.0.2 GigabitEthernet
0/0/1
12.0.0.0/24 Direct 0 0 D 12.0.0.1 GigabitEthernet
0/0/2
12.0.0.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/2
12.0.0.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/2
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.1.0/24 Direct 0 0 D 192.168.1.2 GigabitEthernet
0/0/0
192.168.1.2/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
192.168.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
192.168.2.0/24 Static 60 0 RD 12.0.0.2 GigabitEthernet
0/0/2
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
这样便是设置好了,路由表中的信息分别代表什么意思呢
Destination/Mask (目的地IP地址和子网掩码)
Interface (接口)
Proto (协议) 里面的static便是我们设置的静态路由
Direct (直连路由)
Pre (优先级数值)数字越小,优先级越高
Cost (花销值) 动态路径才有
Flags (标志)目前这条路由处于什么状态
NextHop (下一跳地址)
后面的12.0.0.2便是目的IP地址的下一跳地址
因为一次完整的传输包括发送过去,还有收到消息,属于一次完整的传输,所以我们还要给R3路由创建信息发送回PC 1的路径,这样才能保证在这条传输路径上PC 1和PC 2是互通的,步骤和上面给R1创建的方法一样,只需要变更接口,IP地址和路由即可。
[Huawei]sys R3
[R3]int g0/0/1
[R3-GigabitEthernet0/0/1]ip address 192.168.2.2 24
[R3-GigabitEthernet0/0/1]q
[R3]int g0/0/2
[R3-GigabitEthernet0/0/2]ip address 12.0.0.2 24
[R3-GigabitEthernet0/0/2]q
[R3]ip route-static 192.168.1.2 24 12.0.0.1
Info: The destination address and mask of the configured static route mismatched
, and the static route 192.168.2.0/24 was generated.
[R3]
这样我们就完成了一个传输路径的设置,我们接下来到主机里来测试一下PC 1和PC 2是否相互通顺,可以通讯。
命令:ping IP地址 -t (长ping,一直检测不停,Ctrl+C可以终止检测)
我们用PC 1的命令行来ping一下PC 2的IP地址,这时我们看到下面已经显示连接通讯成功,这就代表我们的这一条传输路径已经创建完成
这里面便是我们需要设置的全部路径(包括传输过去和收到回复消息的路径),这就是两种线路的通讯,第二条路径便需要添加一个路由,与R1和R3一样需要设置好两边的接口IP地址和目的IP与下一跳地址,即可连接起来,可以使用默认地址进行相互连接。
默认路由:此台路由器和主机相连,或者数据且只有一个出口时,可以做默认路由
设置默认路由
命令:ip route-static 0.0.0.0 0 下一跳地址(这里的0.0.0.0代表任意地址,0代表任意子网掩码)这时只需要确认下一跳地址即可