IPv4(Internet Protocol Version 4)是TCP/IP协议族中最为核心的协议之一。它工作在TCP/IP参考模型的网际互联层,该层与OSI参考模型的网络层相对应。网络层提供了无连接数据传输服务,即网络在发送分组时不需要先建立连接,每一个分组(也就是IP数据报文)独立发送。
路由是数据通信网络中最基本的要素。路由信息就是指导IP报文发送的路径信息,路由的过程就是报文转发的过程。
一、IPv4编址及IPv4路由基础实验
1.1 组网拓扑
1.2 实验需求
R1、R2、R3都是各自网络的网关设备,现在需要通过相应的配置,来实现这些网络之间的互联互通。
1.3 配置思路
- 配置路由器上各接口的IP地址;
- 配置静态路由来实现互联互通。
1.4 操作步骤
设备命名
-
使用
system-view命令,从用户视图进入系统视图。使用sysname XXX命令修改设备的名称。R1:
<Huawei> system-viewEnter system view, return user view with Ctrl+Z.[Huawei] sysname ictstu_R1[ictstu_R1]R2:
<Huawei> system-view[Huawei] sysname ictstu_R2[ictstu_R2]R3:
<Huawei> system-view[Huawei] sysname ictstu_R3[ictstu_R3]R4:
<Huawei> system-view[Huawei] sysname ictstu_R4[ictstu_R4]查看路由器接口状态及IP地址
display ip interface brief 命令用来查看接口与IP相关的简要信息,包括IP地址、子网掩码、物理状态和协议状态等。
当前R1上的GigabitEthernet0/0/0和GigabitEthernet0/0/1接口由于尚未配置IP地址,所以IP Address/Mask字段为unassigned状态,Protocol字段为down状态。
R1:
[ictstu_R1] display ip interface brief*down: administratively down^down: standby(l): loopback(s): spoofingThe number of interface that is UP in Physical is 3The number of interface that is DOWN in Physical is 1The number of interface that is UP in Protocol is 1The number of interface that is DOWN in Protocol is 3 Interface IP Address/Mask Physical ProtocolGigabitEthernet0/0/0 unassigned up downGigabitEthernet0/0/1 unassigned up downGigabitEthernet0/0/2 unassigned down downNULL0 unassigned up up(s)[ictstu_R1]查看路由器路由表
display ip routing-table 命令用于查看路由表信息。InLoopBack0为设备上默认创建的环回接口,它是一个特殊的、固定的LoopBack接口,使用环回地址127.0.0.1/8,用来接收所有发送给本机的数据包。
R1:
[ictstu_R1] display ip routing-tableRoute Flags: R - relay, D - download to fib------------------------------------------------------------------------------Routing Tables: Public Destinations : 4 Routes : 4 Destination/Mask Proto Pre Cost Flags NextHop Interface 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 InLoopBack0127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0 [ictstu_R1]此处仅以R1设备为例,其他设备同理。
配置物理接口IP地址
在系统视图下执行 interface GigabitEthernet 0/0/0 命令,进入接口视图。在接口视图下执行 ip address 10.0.12.1 24 命令配置该接口的IP地址。
R1:
[ictstu_R1] interface GigabitEthernet 0/0/0[ictstu_R1-GigabitEthernet0/0/0] ip address 10.0.12.1 24[ictstu_R1-GigabitEthernet0/0/0] quit[ictstu_R1] interface GigabitEthernet 0/0/1[ictstu_R1-GigabitEthernet0/0/1] ip address 10.0.13.1 24[ictstu_R1-GigabitEthernet0/0/1] quitR2:
[ictstu_R2] interface GigabitEthernet 0/0/0[ictstu_R2-GigabitEthernet0/0/0] ip address 10.0.12.2 24[ictstu_R2-GigabitEthernet0/0/0] quit[ictstu_R2] interface GigabitEthernet 0/0/1[ictstu_R2-GigabitEthernet0/0/1] ip address 192.168.1.254 24[ictstu_R2-GigabitEthernet0/0/1] quit[ictstu_R2] interface GigabitEthernet 0/0/2[ictstu_R2-GigabitEthernet0/0/2] ip address 10.0.23.2 24[ictstu_R2-GigabitEthernet0/0/2] quitR3:
[ictstu_R3] interface GigabitEthernet 0/0/0[ictstu_R3-GigabitEthernet0/0/0] ip address 10.0.34.3 24[ictstu_R3-GigabitEthernet0/0/0] quit[ictstu_R3] interface GigabitEthernet 0/0/1[ictstu_R3-GigabitEthernet0/0/1] ip address 10.0.13.3 24[ictstu_R3-GigabitEthernet0/0/1] quit[ictstu_R3] interface GigabitEthernet 0/0/2[ictstu_R3-GigabitEthernet0/0/2] ip address 10.0.23.3 24[ictstu_R3-GigabitEthernet0/0/2] quitR4:
[ictstu_R4] interface GigabitEthernet 0/0/0[ictstu_R4-GigabitEthernet0/0/0] ip address 10.0.34.4 24[ictstu_R4-GigabitEthernet0/0/0] quit查看IP地址配置
接口IP地址配置完成之后,IP Address/Mask字段为配置的IP地址,Protocol字段为切换为up状态。
R1:
[ictstu_R1] display ip interface briefInterface IP Address/Mask Physical ProtocolGigabitEthernet0/0/0 10.0.12.1/24 up upGigabitEthernet0/0/1 10.0.13.1/24 up upGigabitEthernet0/0/2 unassigned down downNULL0 unassigned up up(s)[ictstu_R1]此处仅以R1设备为例,其他设备同理。
查看各设备路由表信息
可以看到,在接口IP地址配置完成之后,针对每个接口自动生成了三条直连路由:
- 指向接口所在网段的路由。
- 指向接口IP地址的主机路由。
- 指向接口所在网段广播地址的主机路由。
主机路由就是掩码长度为32的路由。
R1:
[ictstu_R1] display ip routing-tableRoute Flags: R - relay, D - download to fib---------------------------------------------------------------------------------------Routing Tables: Public Destinations : 10 Routes : 10 Destination/Mask Proto Pre Cost Flags NextHop Interface 10.0.12.0/24 Direct 0 0 D 10.0.12.1 GigabitEthernet0/0/0 10.0.12.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0 10.0.12.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0 10.0.13.0/24 Direct 0 0 D 10.0.13.1 GigabitEthernet0/0/1 10.0.13.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1 10.0.13.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1 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 InLoopBack0127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0R2:
[ictstu_R2] display ip routing-tableDestination/Mask Proto Pre Cost Flags NextHop Interface 10.0.12.0/24 Direct 0 0 D 10.0.12.2 GigabitEthernet0/0/0 10.0.23.0/24 Direct 0 0 D 10.0.23.2 GigabitEthernet0/0/2 192.168.1.0/24 Direct 0 0 D 192.168.1.254 GigabitEthernet0/0/1R3:
[ictstu_R3] display ip routing-tableDestination/Mask Proto Pre Cost Flags NextHop Interface 10.0.13.0/24 Direct 0 0 D 10..13.3 GigabitEthernet0/0/1 10.0.23.0/24 Direct 0 0 D 10.0.23.3 GigabitEthernet0/0/2 10.0.34.0/24 Direct 0 0 D 10.0.34.3 GigabitEthernet0/0/0R4:
[ictstu_R4] display ip routing-tableDestination/Mask Proto Pre Cost Flags NextHop Interface 10.0.34.0/24 Direct 0 0 D 10.0.34.4 GigabitEthernet0/0/0检查设备间互联
使用 ping 命令,测试各设备间的互联互通情况。
R1 > R2:
<ictstu_R1> ping 10.0.12.2PING 10.0.12.2: 56 data bytes, press CTRL_C to break Reply from 10.0.12.2: bytes=56 Sequence=1 ttl=255 time=50 ms Reply from 10.0.12.2: bytes=56 Sequence=2 ttl=255 time=30 ms Reply from 10.0.12.2: bytes=56 Sequence=3 ttl=255 time=30 ms Reply from 10.0.12.2: bytes=56 Sequence=4 ttl=255 time=20 ms Reply from 10.0.12.2: bytes=56 Sequence=5 ttl=255 time=20 ms --- 10.0.12.2 ping statistics --- 5 packet(s) transmitted 5 packet(s) received 0.00% packet loss round-trip min/avg/max = 20/30/50 msR1 > R3:
<ictstu_R1> ping 10.0.13.3PING 10.0.13.3: 56 data bytes, press CTRL_C to break Reply from 10.0.13.3: bytes=56 Sequence=1 ttl=255 time=70 ms Reply from 10.0.13.3: bytes=56 Sequence=2 ttl=255 time=40 ms Reply from 10.0.13.3: bytes=56 Sequence=3 ttl=255 time=30 ms Reply from 10.0.13.3: bytes=56 Sequence=4 ttl=255 time=30 ms Reply from 10.0.13.3: bytes=56 Sequence=5 ttl=255 time=20 ms --- 10.0.13.3 ping statistics --- 5 packet(s) transmitted 5 packet(s) received 0.00% packet loss round-trip min/avg/max = 20/38/70 ms自行依次检查 R2>R3、R3>R4、PC>R2的互通情况。
静态路由配置
默认情况下R2设备上只有直连设备的网络路由条目,因此需要通过手工的方式配置静态路由。在系统视图下执行 ip route-static [目标网段] [掩码] [下一跳] 命令配置静态路由。
R1配置静态路由
R1设备上需要配置访问PC和访问R4设备的路由。
[ictstu_R1] ip route-static 192.168.1.0 24 10.0.12.2 #配置访问 192.168.1.0/24 网段的路由。[ictstu_R1] ip route-static 10.0.34.0 24 10.0.13.3 #配置访问 10.0.34.0/24 网段的路由。查看R1的路由表:

R2配置静态路由
PC访问其他网络,需要通过R2设备进行转发,所以在R2设备上需要配置去往其他网络的路由。
[ictstu_R2] ip route-static 10.0.13.0 24 10.0.12.1 #配置访问 10.0.13.0/24 网段的静态路由。[ictstu_R2] ip route-static 10.0.34.0 24 10.0.23.3 #配置访问 10.0.34.0/24 网段的静态路由。查看R2的路由表:

R3配置静态路由
R3设备上需要配置访问PC和 10.0.12.0/24 网段的路由条目。
[ictstu_R3] ip route-static 192.168.1.0 24 10.0.23.2 #配置访问 192.168.1.0/24 网段的路由。[ictstu_R3] ip route-static 10.0.12.0 24 10.0.13.1 #配置访问 10.0.12.0/24 网段的路由。查看R3的路由表:

R4配置静态路由
R4上需要配置访问PC的路由条目。
[ictstu_R4] ip route-static 192.168.1.0 24 10.0.34.3 #配置访问 192.168.1.0/24 网段的路由。查看R4的路由表:

检查各网段之间互访
使用 ping 命令检查PC是否能够访问R4。
PC> ping 10.0.34.4 Ping 10.0.34.4: 32 data bytes, Press Ctrl_C to breakRequest timeout!Request timeout!From 10.0.34.4: bytes=32 seq=3 ttl=253 time=63 msFrom 10.0.34.4: bytes=32 seq=4 ttl=253 time=31 msFrom 10.0.34.4: bytes=32 seq=5 ttl=253 time=31 ms --- 10.0.34.4 ping statistics ---5 packet(s) transmitted3 packet(s) received40.00% packet lossround-trip min/avg/max = 0/41/63 ms前面可能会有几个数据包丢失,但是不影响结果。
使用 tracert 命令跟踪PC访问R4的路径。可以发现PC访问R4并不经过R1。
PC>tracert 10.0.34.4 traceroute to 10.0.34.4, 8 hops max(ICMP), press Ctrl+C to stop1 192.168.1.254 31 ms 16 ms <1 ms2 10.0.23.3 31 ms 16 ms 15 ms3 10.0.34.4 16 ms 16 ms 31 ms二、OSPF路由协议基础实验
2.1 介绍
开放式最短路径优先OSPF(Open Shortest Path First)是IETF组织开发的一个基于链路状态的内部网关协议(Interior Gateway Protocol)。目前针对IPv4协议使用的是OSPF Version 2(RFC2328)。
OSPF作为基于链路状态的协议,具有以下优点:
- OSPF采用组播形式收发报文,这样可以减少对其它不运行OSPF路由器的影响。
- OSPF支持无类型域间选路(CIDR)。
- OSPF支持对等价路由进行负载分担。
- OSPF支持报文认证。
2.2 组网拓扑
2.3 实验需求
R1、R2、R3都是各自网络的网关设备,现在需要通过OSPF动态路由协议,来实现这些网络之间的互联互通。
2.4 配置思路
- 配置路由器上各接口的IP地址;
- 配置OSPF来实现互联互通。
2.5 操作步骤
设备命名
使用 system-view 和 sysname 命令完成设备命名。
R1:
<Huawei> system-view[Huawei] sysname ictstu_R1[ictstu_R1]R2:
<Huawei> system-view[Huawei] sysname ictstu_R2[ictstu_R2]R3:
<Huawei> system-view[Huawei] sysname ictstu_R3[ictstu_R3]R4:
<Huawei> system-view[Huawei] sysname ictstu_R4[ictstu_R4]配置物理接口IP地址
按照拓扑图规划的地址,配置各设备各物理接口的IP地址。
R1:
[ictstu_R1] interface GigabitEthernet 0/0/0[ictstu_R1-GigabitEthernet0/0/0] ip address 10.0.12.1 24[ictstu_R1-GigabitEthernet0/0/0] quit[ictstu_R1] interface GigabitEthernet 0/0/1[ictstu_R1-GigabitEthernet0/0/1] ip address 10.0.13.1 24[ictstu_R1-GigabitEthernet0/0/1] quitR2:
[ictstu_R2] interface GigabitEthernet 0/0/0[ictstu_R2-GigabitEthernet0/0/0] ip address 10.0.12.2 24[ictstu_R2-GigabitEthernet0/0/0] quit[ictstu_R2] interface GigabitEthernet 0/0/1[ictstu_R2-GigabitEthernet0/0/1] ip address 192.168.1.254 24[ictstu_R2-GigabitEthernet0/0/1] quit[ictstu_R2] interface GigabitEthernet 0/0/2[ictstu_R2-GigabitEthernet0/0/2] ip address 10.0.23.2 24[ictstu_R2-GigabitEthernet0/0/2] quitR3:
[ictstu_R3] interface GigabitEthernet 0/0/0[ictstu_R3-GigabitEthernet0/0/0] ip address 10.0.34.3 24[ictstu_R3-GigabitEthernet0/0/0] quit[ictstu_R3] interface GigabitEthernet 0/0/1[ictstu_R3-GigabitEthernet0/0/1] ip address 10.0.13.3 24[ictstu_R3-GigabitEthernet0/0/1] quit[ictstu_R3] interface GigabitEthernet 0/0/2[ictstu_R3-GigabitEthernet0/0/2] ip address 10.0.23.3 24[ictstu_R3-GigabitEthernet0/0/2] quitR4:
[ictstu_R4] interface GigabitEthernet 0/0/0[ictstu_R4-GigabitEthernet0/0/0] ip address 10.0.34.4 24[ictstu_R4-GigabitEthernet0/0/0] quit查看各设备路由表信息
在接口IP地址配置完成之后,针对每个接口自动生成了三条直连路由。
主机路由就是掩码长度为32的路由。
R1:
[ictstu_R1] display ip routing-table
R2:
[ictstu_R2] display ip routing-table
R3:
[ictstu_R3] display ip routing-table
R4:
[ictstu_R4] display ip routing-table
检查设备间互联
使用 ping 命令,测试各设备间的互联互通情况。
R1 > R2:
<ictstu_R1> ping 10.0.12.2
R1 > R3:
<ictstu_R1> ping 10.0.13.3
R1 > R4:
使用R1 ping R4 GE 0/0/0接口的配置的IP。通过检查发现,只有两两直接相连的接口的地址才能ping通,如果不是直连的无法ping通。

自行依次检查 R2>R3、R3>R4、PC>R2的互通情况。
动态路由OSPF配置
目前只有相邻设备之间的接口才可以互访,跨设备无法进行互访,这是因为没有跨设备的路由,因此需要通过在每个设备上配置OSPF以实现所有设备间的互联互通。
R1配置OSPF
创建OSPF进程和区域,并且宣告直链网段。
[ictstu_R1]ospf 1[ictstu_R1-ospf-1]area 0[ictstu_R1-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255[ictstu_R1-ospf-1-area-0.0.0.0]network 10.0.13.0 0.0.0.255
R2配置OSPF
创建OSPF进程和区域,并且宣告直链网段,R2上有三个直连网段。
[ictstu_R2]ospf 1[ictstu_R2-ospf-1]area 0[ictstu_R2-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255[ictstu_R2-ospf-1-area-0.0.0.0]network 10.0.23.0 0.0.0.255[ictstu_R2-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255
R3配置OSPF
创建OSPF进程和区域,并且宣告直链网段,R3上同样有三个直链网段。
[ictstu_R3]ospf 1[ictstu_R3-ospf-1]area 0[ictstu_R3-ospf-1-area-0.0.0.0]network 10.0.13.0 0.0.0.255[ictstu_R3-ospf-1-area-0.0.0.0]network 10.0.23.0 0.0.0.255[ictstu_R3-ospf-1-area-0.0.0.0]network 10.0.34.0 0.0.0.255
R4配置OSPF
创建OSPF进程和区域,并且宣告直链网段,R4上只需要宣告一个直链网段就可以了。
[ictstu_R4]ospf 1[ictstu_R4-ospf-1]area 0[ictstu_R4-ospf-1-area-0.0.0.0]network 10.0.34.0 0.0.0.255
查看OSPF邻居状态
使用 display ospf peer 命令查看OSPF邻居状态。
R1的OSPF邻居
可以看到R1存在两个邻居,Router ID为10.0.12.2的R2,以及Router ID为10.0.34.3的R3。
[ictstu_R1]display ospf peer
R2的OSPF邻居
R2存在两个邻居,R1和R3。
[ictstu_R2]display ospf peer
R3的OSPF邻居
R3存在三个邻居,R1、R2、R4。
[ictstu_R3]display ospf peer
R4的OSPF邻居
R4存在一个邻居,R3。
[ictstu_R4]display ospf peer
查看OSPF路由信息
使用 display ospf routing 命令查看OSPF路由信息。
可以看到除了自身拥有的 10.0.12.0/24 和 10.0.13.0/24 网段以外,还多了 10.0.23.0/24 和 192.168.1.0/24 网段。
R1的OSPF路由信息
[ictstu_R1]display ospf routing
R2的OSPF路由信息
[ictstu_R2]display ospf routing
R3的OSPF路由信息
[ictstu_R3]display ospf routing
R4的OSPF路由信息
[ictstu_R4]display ospf routing
可以发现,四个路由器上除了NextHop和AdvRouter不一样以外,其他的条目都是一样的,都学习到了其他的条目。
检查各网段之间互访
使用 ping 命令检查PC是否能够访问R4。
PC> ping 10.0.34.4
使用 tracert 命令跟踪PC访问R4的路径。可以发现PC访问R4并不经过R1,有知道为什么的吗?
PC>tracert 10.0.34.4