如何封装ip数据包(Link的路由器如何设置允许路由封装)

小编:霸主 更新时间:2023-01-11

一、如何封装ip数据包

PPP是一种数据链路层协议,遵循HDLC(高级数据链路控制协议)族的一般报文格式。PPP
是为了在点对点物理链路(例如串口链路、电话ISDN等)上传输模型中的网络层报文而设计的,它改进了之前的一个点对点协议–SLI协议–只能同时运行一个网络协议、无容错控制、授权等许多缺陷,PPP是现在最流行的点对点链路控制协议。
ppp协议封装方法如下:

第1步:配置路由器主机名。从用户模式进入特权模式。
从特权模式进入全局配置模式。
在全局配置模式下,将路由器名称配置为“RouterA",输入命令后,马上生效,立即下以看到提示符改为RouterA。
第2步:为PPP协议封装配置路由器远程登录密码。
进入路由器vty0至vty4虚拟终端线路模式。将路由器远程登录口令设置为“100”。
退回到全局配置模式。
第3步:配置路由器特权模式口令,将路由器特权模式口令配置为“100"。

第4步:为路由器各接口封装PPP协议及分配IP地址。为fa 0分配IP地址。
为端口S0封装PPP协议并分配ip地址。
由于RouterA的S0端口为DCE,要配置时钟,此处配置时钟频率为64000.
查看此时路由器的S0端口状态。

第5步:配置静态路由。
配置静态路由时,有两种方法。一种方法是指定去目标网络192.168.2.0时的下一跳地址192.168.12.2(下一个路由器的入口地址);另一种方法是指定去目标网络192.168.2.0时的本路由器的出口serial 0.

第6步:查验路由表,此时可以看到路由器的路由表,此时没有S0端口所在网段的直连路由,原因是此时这条链路还没处在连通状态。

2. RouterB路由器的配置
第1步:配置路由器主机名。从用户模式进入特权模式。
从特权模式进入全局配置模式。
将路由器名称配置为“RouterB”。
第2步:配置路由器远程登录密码。
进入路由器vty0至vty4虚拟终端线路模式。
将路由器远程登录口令设置为“100”。
第3步:配置路由器特权模式口令,将路由器特权模式口令配置为“100”。

第4步:为路由器各接口封装PPP协议及分配IP地址。
为端口S0封装PPP协议并分配IP地址。
查看此时路由器的S0端口状态。

第5步:配置静态路由。

第6步:查验路由表,此时可以看到路由器的路由表中既包含直连路由,也包含静态路由。

第7步:在PC1与PC2间相互Ping通。
在PC机间相互Ping通前,一定要做好PC的参数设置,包括IP地址及网关,网关指向路由器的入口Fa0的IP地址。

二、Link的路由器如何设置允许路由封装

TP-Link的路由器配置GRE隧道是一个简单的工作,只需要输入几行命令即可实现。
路由器A:
interface Ethernet0/1
ip address 10.2.2.1 255.255.255.0

interface Serial0/0
ip address 192.168.4.1 255.255.255.0

interface Tunnel0
ip address 1.1.1.2 255.255.255.0
tunnel source Serial0/0
tunnel destination 192.168.4.2

路由器B:

interface FastEthernet0/1
ip address 10.1.1.1 255.255.255.0

interface Serial0/0
ip address 192.168.4.2 255.255.255.0

interface Tunnel0
ip address 1.1.1.1 255.255.255.0
tunnel source Serial0/0
tunnel destination 192.168.4.1

另外注意下路由配置情况,
而tunnel source和tunnel destination地址是Internet上可以路由的IP地址,用于建立tunnel。例如,本端路由器地址规划为:
eth0:10.1.1.1/24 http://www.luyouqiwang.com/14711/ (连接内部局域网)
tunnel0:10.2.1.1/30(tunnel source:202.38.160.1;tunnel destination:192.15.135.80)
serial0:202.38.160.1/24(连接Internet)
ip route 10.3.1.0 255.255.255.0 10.2.1.2(到对端以太网的路由)
对端路由器地址规划为:
eth0:10.3.1.1/24(连接内部局域网)
tunnel0:10.2.1.2/30(tunnel source:192.15.135.80;tunnel destination:202.38.160.1)
serial0:192.15.135.80/24(连接Internet)
ip route 10.1.1.0 255.255.255.0 10.2.1.1(到对端以太网的路由)

在这个例子中,两个路由器均拥有虚拟接口,即隧道接口。这一接口属于各自的网络,就好像一个点到点的T1环路。跨越隧道网络的数据采用串行网络方式传输。

对于每个路由器都有两种途径将数据传递到另一端,即通过串行接口以及通过隧道接口(通过隧道传递数据)。该隧道可以传输非路由协议的数据,如NetBIOS或AppleTalk。如果数据需要通过互联网,你可以使用IPSec对其进行加密。
从下面的信息反馈可以看出,路由器B上的隧道接口和其他网络接口没有什么不同:

RouterB# sh ip int brie
Interface IP-Address OK? Method Status Protocol
Ethernet0 10.1.1.1 YES manual up down
Serial0 192.168.4.2 YES manual up up

Serial1 unassigned YES unset administratively down down
Tunnel0 1.1.1.1 YES manual up up
RouterB#
解决GRE隧道的问题

由于GRE是将一个数据包封装到另一个数据包中,因此你可能会遇到GRE的数据报大于网络接口所设定的数据包最大尺寸的情况。接近这种问题的方法是在隧道接口上配置ip tcp adjust-mss 1436.
虽然GRE并不支持加密,但是你可以通过tunnel key命令在隧道的两头各设置一个密钥。这个密钥其实就是一个明文的密码。
由于GRE隧道没有状态控制,可能隧道的一端已经关闭,而另一端仍然开启。这一问题的解决方案就是在隧道两端开启 keepalive数据包。它可以让隧道一端定时向另一端发送keepalive数据,确认端口保持开启状态。如果隧道的某一端没有按时收到 keepalive数据,那么这一侧的隧道端口也会关闭。