%# -*- coding: utf-8-unix -*-

\section{动态路由（RIP）}
\label{sec:c3_s2}

\subsection{实验目的}
\label{subsec:c3_s2_object}

理解动态路由协议RIP的工作原理；
掌握采用动态路由协议RIP进行网络设计的基本原则和方法。

\subsection{实验内容}
\label{subsec:c3_s2_content}

\begin{itemize}
  \item 华为路由器IP地址的配置；
  \item 动态路由协议rip的配置；
  \item 路由规划；
  \item 网络测试与排错操作；
  \item 静态路由与动态路由的区别。
\end{itemize}

\subsection{实验原理、方法和手段}
\label{subsec:c3_s2_principle}

简要说明RIP工作原理和适用范围；设计至少包括3个网络由RIP协议互连起来；
观察并记录各设备状态变化情况，特别留意路由信息的交换和路由表。
解释说明与路由协议、路由表的相关性。

可参考下图连线，具体联线情况请自行标注。

\begin{figure}[!htp]
  \centering
  \includegraphics[width=8cm]{c3_RIP-topo}
  \caption{实验拓扑图}
  \label{fig:c3_RIP-topo}
\end{figure}

\subsection{实验条件}
\label{subsec:c3_s2_requirement}

\begin{itemize}
  \item 华为ENSP仿真平台中：2台PC，两台路由器；
  \item 双绞线若干。
\end{itemize}

\subsection{实验步骤}
\label{subsec:c3_s2_procedure}

实验说明：路由器端口以具体选用的设备为准。
如果是实际设备，请观察路由器前面板和后面板的端口名称，
并使用disp int或者disp cur命令查看端口的实际名称。在对路由器进行配置时，
可使用disp cur命令来检查当前路由器上生效的配置命令。

\begin{enumerate}
  \item 硬件连接，完成PC1、PC2到路由器RT1和RT2的网络连接，
  路由器RT1到路由器RT2的连接；
  PC1到路由器RT1控制线的连接，PC2到路由器RT2控制线的连接。
  拓扑图检查无误后方可进行后面的实验步骤,
  实验报告中的拓扑图必须标清路由器实际连接的端口。
  \item 为PC1、PC2分别设置IP地址、掩码和网关。
  \item 使用sysname命令为路由器R1和R2命名。
  路由器R1的名称为学生自己的姓名拼音+R1，
  路由器R2的名称为学生自己的姓名拼音+R2,要求记录输入的命令和输出（截屏）。
  R1上的命令:
  \begin{code}[text]
    <Huawei>system-view
    [Huawei]sysname zhangsanR1
  \end{code}

  \begin{figure}[!htp]
    \centering
    \includegraphics[width=10cm]{c3_sysname-R1_2}
    \caption{R1配置图}
    \label{fig:c3_sysname-R1_1}
  \end{figure}
 
  R2上的命令:
  \begin{code}[text]
    <Huawei>system-view
    [Huawei]sysname zhangsanR2
  \end{code}

  \begin{figure}[!htp]
    \centering
    \includegraphics[width=10cm]{c3_sysname-R2_2}
    \caption{R2配置图}
    \label{fig:c3_sysname-R2_1}
  \end{figure}
 
  \item 为路由器R1的 GE0接口配置IP地址。
  配置完成后PC1应该可以Ping通RT1的 GE0口的地址。
  为路由器R2的  GE1接口配置IP地址。
  配置完成后PC2应该可以Ping通RT2的GE1口的地址。
  要求记录输入的命令和输出（截屏）。
  (本模拟器R1实际使用的接口名由实际使用的路由器型号确定，
  可能有Ethernet0/0/0；或GigabitEthernet0/0/x；或FastEthernet0/0/x)

  R1上的命令:
  \begin{code}[text]
    [zhangsanR1]interface  GigabitEthernet 0/0/0
    [zhangsanR1- GigabitEthernet0/0/0]ip address 192.168.1.1 255.255.255.0
    [zhangsanR1- GigabitEthernet0/0/0]
  \end{code}

  PC1可以Ping通R1的192.168.1.1地址

  \begin{code}[text]
    PC1>ping 192.168.1.1
  \end{code}
  
  \begin{figure}[!htp]
    \centering
    \includegraphics[width=10cm]{c3_ping_2}
    \caption{Ping通效果图}
    \label{fig:c3_ping_2}
  \end{figure}
 
  R2上的命令:
  \begin{code}[text]
    [zhangsanR2]interface GigabitEthernet 0/0/1
    [zhangsanR1-GigabitEthernet0/0/1]ip address 192.168.3.1 255.255.255.0
  \end{code}

  PC2可以Ping通R2的192.168.3.1地址

  \begin{code}[text]
    PC1>ping 192.168.3.1
  \end{code}

  \item 为路由器R1的 Ethernet0/0/1接口配置IP地址，
  为路由器R2的Ethernet0/0/0接口配置IP地址。
  配置完成后路由器R1和R2应该可以互相Ping通。
  要求记录输入的命令和输出（截屏）。

  \begin{code}[text]
    [zhangsanR1-GigabitEthernet0/0/1]ip address 192.168.2.1 255.255.255.0
    [zhangsanR1-GigabitEthernet0/0/1]quit
  \end{code}
  \begin{code}[text]
    [zhangsanR2-GigabitEthernet0/0/0]ip address 192.168.2.2 255.255.255.0
    [zhangsanR2-GigabitEthernet0/0/0]quit
  \end{code}

  \item 为RT1和RT2配置动态路由协议rip。
  要求记录输入的命令和输出（截屏或文本复制）。
  配置后可以用disp cur检查配置，或者disp ip routing-table检查路由表。
  要求记录输入的命令和输出（截屏）。

  \begin{code}[text]
    [zhangsanR1]rip
    [zhangsanR1-rip]network 192.168.1.0
    [zhangsanR1-rip]network 192.168.2.0
  \end{code}
 
  \begin{code}[text]
    [zhangsanR2]rip
    [zhangsanR2-rip]network 192.168.3.0
    [zhangsanR2-rip]network 192.168.2.0
  \end{code}
 
  \begin{code}[text]
    [zhangsanR1]display ip routing-table
  \end{code}

  \begin{code}[text]
    [zhangsanR2]display ip routing-table
  \end{code}

  等待1分钟后，在两台路由器上重复disp ip rout(缩写)命令，
  比较路由表，rip协议是否出现？
  
  注意：如果要删除某路由器上的所有rip配置，或路由输入错误，
  则输入下列命令则可删除刚才的路由
  \begin{code}[text]
    [zhangsanR2]undo rip
  \end{code}

  \item 验证PC1和PC2可以ping通。要求记录输入的命令和输出（截屏）。
  \item （为后续实验，建议保存拓扑和具体设备的配置命令，
  即在<router>和<switch>模式中输入save命令，并保存已配置命令

\end{enumerate}

\subsection{思考题}
\label{subsec:c3_s2_rethink}

\begin{enumerate}
  \item 在完成rip动态路由配置后，最远两端能够ping通，
  请问网络中间的任意两点间也能ping通吗？为什么？
  \item 静态路由和动态路由协议的区别是什么？
\end{enumerate}

\subsection{注意事项及有关说明}
\label{subsec:c3_s2_notice}

路由器端口以具体选用的设备为准，请将E0口和E1口对应到实际设备上的端口名称，接口名由实际使用的路由器型号确定，可能有Ethernet0/0/0；或GigabitEthernet0/0/x；或FastEthernet0/0/x。如果是实际设备，请观察路由器前面板和后面板的端口名称，并使用disp int或者disp cur命令查看端口的实际名称。在对路由器进行配置时，可使用disp cur命令来检查当前路由器上生效的配置命令。
 
