H3C认证培养练习实验10 ARP

前面的文章中,我们都很对DHCP故障处理的流程进行了讲解,一些图示效果,相信大家对此也应该有一些印象。今天,我们来讲解一下DHCP故障处理步骤。总共分为三个大步,其中一些细节,望大家能够有所掌握。

Openvpn在linux上的完美实现

实验任务一:ARP表项观察

A计划

一,OpenVPN的工作原理**

步骤一:运行超级终端并初始化路由器配置

将PC(或终端)的串口通过标准Console电缆与路由器的Console口连接。电缆的RJ-45头一端连接路由器的Console口;9针RS-232接口一端连接计算机的串行口。

检查设备的软件版本及配置信息,确保各设备软件版本符合要求,所有配置为初始状态。如果配置不符合要求,请学员在用户视图下擦除设备中的配置文件,然后重启设备以使系统采用缺省的配置参数进行初始化。

DHCP故障处理步骤1.检查物理连接是否畅通

VPN技术通过密钥交换、封装、认证、加密手段在公共网络上建立起私密的隧道,保障传输数据的完整性、私密性和有效性。OpenVPN是近年来新出现的开放源码项目,实现了SSLVPN的一种解决方案。

步骤二:配置PC及路由器的IP地址

表10-1 IP地址列表

设备名称

接口

IP地址

PCA

172.16.0.1/24

PCB

172.16.1.1/24

RTA

G0/0

172.16.0.254/24

RTA

G0/1

172.16.1.254/24

据表10-1所示在PC上配置IP地址和掩码。配置完成后,在PC的“命令提示符”窗口下,键入命令ipconfig来验证PC的IP地址是否配置正确,根据其输出信息回答下面的问题:

PCA的显示结果是:

IP Address 172.16.0.1;
Subnet  Mask 255.255.255.0 ;

Default Gateway 空

PCB的显示结果是:

IP Address 172.16.1.1;
Subnet  Mask
255.255.255.0;

Default Gateway空

然后在RTA的接口上配置IP地址及掩码,请在下面的空格中补充完整的命令:

[RTA]interface GigabitEthernet0/0

[RTA-GigabitEthernet0/0]ip
address 172.16.0.254 24

[RTA]interface GigabitEthernet0/1

[RTA-GigabitEthernet0/1]ip address 172.16.1.254 24

在客户端与服务器连接的网卡上配置IP地址,确保该IP地址与服务器端接口GigabitEthernet1/0/0的IP地址在同一网段。从客户端ping
GigabitEthernet1/0/0接口的IP地址,如果可以ping通,则说明连接畅通,可以排除物理线路故障。

传统SSLVPN通过端口代理的方法实现,代理服务器根据应用协议的类型(如http,telnet等)做相应的端口代理,客户端与代理服务器之间建立SSL安全连接,客户端与应用服务器之间的所有数据传输通过代理服务器转发。这种实现方式烦琐,应用范围也比较窄:仅适用于用TCP固定端口进行通信的应用系统,且对每个需要代理的端口进行单独配置;对于每个需要用到动态端口的协议都必须重新开发,且在代理中解析应用协议才能实现代理,如FTP协议;不能对TCP以外的其它网络通信协议进行代理;代理服务器前端的防火墙也要根据代理端口的配置变化进行相应调整。

步骤三:查看ARP信息

在RTA上执行执行命令display interface
GigabitEthernet 0/0,根据该命令的输出信息,填写如下空格:

Internet Address is 172.16.0.254/24 Primary

IP Packet Frame Type: PKTFMT_ETHNT_2,  Hardware Address: 000f-e2d1-bf50

在RTA上执行命令display interface
GigabitEthernet 0/1,根据该命令的输出信息,填写如下空格:

Internet Address is 172.16.1.254/24 Primary

IP Packet Frame Type: PKTFMT_ETHNT_2,  Hardware Address: 000f-e2d1-bf51

在PC的“命令提示符”窗口下,键入命令ipconfig
/all来查看PC的接口MAC与IP地址

根据该命令的输出信息,请填写如下空格PC的MAC地址

PCA:Physical Address.. . . . . .
. . : 00-1C-23-3D-56-95

PCB:Physical Address. . . . . . .
. . : 00-13-72-8E-47-51

根据以上信息,我们做一张表,表的内容是PC及RTA的IP地址与MAC地址对应关系,请补充表中空格处的MAC地址如下所示:

表10-2 IP地址与MAC地址对应关系列表

设备名称

接口

IP地址

MAC地址

PCA

172.16.0.1/24

00-1C-23-3D-56-95

PCB

172.16.1.1/24

00-13-72-8E-47-51

RTA

G0/0

172.16.0.254/24

000f-e2d1-bf50

RTA

G0/1

172.16.1.254/24

000f-e2d1-bf51

然后,分别在PCA和PCB的“命令提示符”窗口下用ping命令来测试PC到RTA的可达性,以使PC及RTA建立ARP表项。

测试完成后,分别在PCA、PCB和RTA上查看ARP表项信息,分别在PCA和PCB的“命令提示符”窗口下用arp –a来查看ARP表象信息,根据该命令的输出信息,请填写如下的空格:

PCA的输出信息:

Internet Address      PhysicalAddress      Type

172.16.0.254 000f-e2d1-bf50 dynamic

PCB的输出信息:

Internet Address      PhysicalAddress      Type

172.16.1.254 000f-e2d1-bf51dynamic

在RTA上可以在任何视图下执行display arp all命令查看路由器所有的ARP表项,请执行该命令并根据其输出信息补充如下的空格:

IP Address      MAC Address     VLAN ID  Interface  Aging  Type

172.16.0.1    
001c-233d-5695    N/A       GE0/0      13D

172.16.1.1    
0013-728e-4751    N/A       GE0/1      15 D

如上输出信息中,type字段的含义是ARP表项类型:动态,用D表示;静态,用S表示;授权,用A表示;

Aging字段的含义是动态ARP表项的老化时间。

把我们所做的表1-2与PC及RTA上的ARP表项对比一下。可知,PC及RTA都建立了正确的ARP表项,表项中包含了IP地址和对应的MAC地址。

注意:

学员实验过程中所显示的MAC地址与本指导手册中的不同,是正常现象。

也可以在服务器端打开DHCP的调试开关,查看是否可以收到客户端的DHCPDISCOVER报文。

OpenVPN以一种全新的方式实现了SSLVPN的功能,克服了传统SSLVPN的一些缺陷,扩展了应用领域,并且防火墙上只需开放TCP或UDP协议的一个端口。

实验任务二:ARP代理配置

本实验通过在设备上配置ARP代理,使设备能够对不同子网间的ARP报文进行转发,使学员能够了解ARP代理的基本工作原理,掌握ARP代理的配置方法。

1,虚拟网卡

步骤一:运行超级终端并初始化路由器配置

将PC(或终端)的串口通过标准Console电缆与路由器的Console口连接。电缆的RJ-45头一端连接路由器的Console口;9针RS-232接口一端连接计算机的串行口。

检查设备的软件版本及配置信息,确保各设备软件版本符合要求,所有配置为初始状态。如果配置不符合要求,请学员在用户视图下擦除设备中的配置文件,然后重启设备以使系统采用缺省的配置参数进行初始化。

在Linux2.4版本以上,操作系统支持一个名为tun的设备,tun设备的驱动程序中包含两个部分,一部分是字符设备驱动,一部分是网卡驱动。网卡的驱动把从TCP/IP协议栈收到的数据包结构skb放于tun设备的读取队列,用户进程通过调用字符设备接口read获得完整的IP数据包,字符驱动read函数的功能是从设备的读取队列读取数据,将核心态的skb传递给用户;反过来字符驱动write函数给用户提供了把用户态的数据写入核心态的接口,write函数把用户数据写入核心空间并穿入TCP/IP协议栈。该设备既能以字符设备的方式被读写,作为系统的虚拟网卡,也具有和物理网卡相同的特点:能够配置IP地址和路由。对虚拟网卡的使用是OpenVPN实现其SSLVPN功能的关键。

步骤二:配置PC及路由器的IP地址

表10-3 IP地址列表

设备名称

接口

IP地址

PCA

172.16.0.1/16

PCB

172.16.1.1/16

RTA

G0/0

172.16.0.254/24

RTA

G0/1

172.16.1.254/24

根据上表所示在PC上配置IP地址和掩码。配置完成后,在PC的“命令提示符”窗口下,键入命令ipconfig来验证PC的IP地址是否配置正确。根据其输出信息回答下面的问题:

PCA的显示结果是:

IP Address172.16.0.1;
Subnet  Mask  255.255.0.0;

Default Gateway 空

PCB的显示结果是:

IP Address172.16.1.1;Subnet  Mask 255.255.0.0;  

Default Gateway 空

然后在RTA的接口上配置IP地址及掩码,请在下面的空格中补充完整的命令:

[RTA]interfaceGigabitEthernet0/0

[RTA-GigabitEthernet0/0]ip
address 172.16.0.254 24

[RTA]interface GigabitEthernet0/1

[RTA-GigabitEthernet0/1] ip
address 172.16.1.25424

2,地址池以及路由

步骤三:配置ARP代理

在PCA和PCB上通过ping来检测他们之间是否可达,检测的结果是不能互通

导致这种结果的原因是因为尽管PCA和PCB处于同一个子网内(掩码都是255.255.0.0),但RTA上两个接口的子网是不同的(分别为172.16.0.0/24和172.16.1.0/24),所以它不会在两个不同子网之间转发ARP报文

在RTA上配置ARP代理,请在下面的空格处补充完整的命令

[RTA]interface GigabitEthernet0/0

[RTA-GigabitEthernet0/0]
proxy-arp enable

[RTA]interface GigabitEthernet0/1

[RTA-GigabitEthernet0/1] proxy-arp enable

配置完成后,在PCA上用ping命令测试到PCB得可达性,其结果是可以互通

OpenVPN服务器一般需要配置一个虚拟IP地址池和一个自用的静态虚拟IP地址(静态地址和地址池必须在同一个子网中),然后为每一个成功建立SSL连接的客户端动态分配一个虚拟IP地址池中未分配的地址。这样,物理网络中的客户端和OpenVPN服务器就连接成一个虚拟网络上的星型结构局域网,OpenVPN服务器成为每个客户端在虚拟网络上的网关。OpenVPN服务器同时提供对客户端虚拟网卡的路由管理。当客户端对OpenVPN服务器后端的应用服务器的任何访问时,数据包都会经过路由流经虚拟网卡,OpenVPN程序在虚拟网卡上截获数据IP报文,然后使用SSL协议将这些IP报文封装起来,再经过物理网卡发送出去。OpenVPN的服务器和客户端在虚拟网卡之上建立起一个虚拟的局域网络,这个虚拟的局域网对系统的用户来说是透明的。

步骤四:查看ARP信息

在PCA上查看ARP表项,根据其输出信息补充如下的空格

Internet Address      PhysicalAddress      Type

172.16.1.1000f-e2d1-bf50dynamic

  ARP表项中PCB的IP地址对应的MAC地址与RTA接口G0/0的MAC地址相同,由此可以看出,是RTA的接口G0/0接口执行了ARP代理功能,为PCA发出的ARP请求提供了代理应答。

在PCB上查看ARP表项,可以看到ARP表项中PCA的IP地址对应的MAC地址与RTA的接口G0/1的MAC地址相同

在RTA上通过可以通过display arp all命令查看ARP表项,其输出结果与实验一的结果一样

会员注册咨询QQ: 1750121165;咨询电话:185-0135-9297;全国热线:400-097-1977

3,客户端与服务端安全连接的建立

OpenVPN的服务器和客户端支持tcp和udp两种连接方式,只需在服务端和客户端预先定义好使用的连接方式(tcp或udp)和端口号,客户端和服务端在这个连接的基础上进行SSL握手。连接过程包括SSL的握手以及虚拟网络上的管理信息,OpenVPN将虚拟网上的网段、地址、路由发送给客户端。连接成功后,客户端和服务端建立起SSL安全连接,客户端和服务端的数据都流入虚拟网卡做SSL的处理,再在tcp或udp的连接上从物理网卡发送出去。

4,数据包的处理过程

4.1发送数据流程

应用层的外出数据,经过系统调用接口传入核心TCP/IP层做处理,在TCP/IP经过路由到虚拟网卡,虚拟网卡的网卡驱动发送处理程序hard_start_xmit()将数据包加入skb表并完成数据包从核心区到用户区的复制,OpenVPN调用虚拟网卡的字符处理程序tun_read(),读取到设备上的数据包,对读取的数据包使用SSL协议做封装处理后,通过socket系统调用发送出去。

4.2接收数据流程
物理网卡接收数据包,经过核心TCP/IP上传到OpenVPN,OpenVPN通过link_socket_read()接收数据包,使用SSL协议进行解包处理,经过处理的数据包OpenVPN调用虚拟网卡的字符处理程序tun_write()写入虚拟网卡的字符设备,设备驱动程序完成数据从用户区到核心区的复制,并将数据写入skb链表,然后调用网卡netif_rx()接收程序,数据包再次进入系统TCP/IP协议栈,传到上层应用程序。

图片 1

5,数据包的封装

OpenVPN提供tun和tap两种工作模式。在tun模式下,从虚拟网卡上收到的是不含物理帧头IP数据包,SSL处理模块对IP包进行SSL封装;在tap模式下,从虚拟网卡上收到的是包含物理帧头的数据包,SSL处理模块对整个物理帧进行SSL封装。Tap模式称为网桥模式,整个虚拟的网络就像网桥方式连接的物理网络。这种模式可以传输以太网帧、IPX、NETBIOS等数据包,应用范围更广。

6,OpenVPNOpenssl**

OpenVPN软件包需要和openssl软件一起安装,因为OpenVPN调用了Openssl函数库,OpenVPN的客户端和服务端建立SSL链接的过程是通过调用Openssl来实现的。通过bio_write()/函数把数据写入Openssl的状态机通道,bio_read()从Openssl读取结果。OpenVPN还调用Openssl的加解密函数处理转发的数据包。

二,OpenVPN的应用**

OpenVPN能够运行于大多常见的系统平台,是一个基于SSL/TLS的VPN解决方案。OpenVPN能够基于TAP/TUN虚拟设备驱动实现2层及3层的链接,提供基于SSL/TLS的工业级别加密功能,并且实现了大多数常见VPN解决方案的全部特性。但目前提供整合了OpenVPN的VPN硬件厂商还不太多。

图片 2

1,安装openvpn软件包

lzo提供了一种数据加密的算法,这里openvpn会用到lzo算法,所以要安装lzo

1234567891011解压及安装``#tarxvflzo-``2.04``.tar.gz``#cdlzo-``2.04``#./configure--prefix=/usr/local/lzo``#make&&makeinstall``#cd../``#tarxvfopenvpn-``2.1``.``4``.tar.gz``#cdopenvpn-``2.1``.``4``#./configure--prefix=/usr/local/openvpn--``with``-lzo-headers=/usr/local/lzo/``include``/--``with``-lzo-lib=/usr/local/lzo/lib/--``with``-ssl-headers=/usr/``include``/openssl/--``with``-ssl-lib=/usr/lib``#make&&makeinstall``#cd../

2,openvpn设置**

2.1用easy-rsa生成服务器证书客户端证书

12345678910111213141516171819202122[[email protected]~]#mkdir/etc/openvpn``[[email protected]~]#cp/root/openvpn-``2.1``.``4``/easy-rsa//etc/openvpn/-r``[[email protected]~]#cd/etc/openvpn/easy-rsa/``2.0``/``[[email protected]``2.0``]#cat``var``s|grep-v``'^$'``|grep-v``'^#'``exportEASY_RSA=``` "pwd" ```RSA在当前目录``exportOPENSSL=``"openssl"``exportPKCS11TOOL=``"pkcs11-tool"``exportGREP=``"grep"``` exportKEY_CONFIG=$EASY_RSA/whichopensslcnf$EASY_RSA`````这个是一个很特别的参数没有“”,openssl的配置文件``exportKEY_DIR=``"$EASY_RSA/keys"``密钥的位置``echoNOTE:Ifyourun./clean-all,Iwillbedoingarm-rfon$KEY_DIR``exportPKCS11_MODULE_PATH=``"dummy"``exportPKCS11_PIN=``"dummy"``exportKEY_SIZE=``1024``密钥的大小长度``exportCA_EXPIRE=``3650``CA证书的过期时间天数``exportKEY_EXPIRE=``3650``密钥的时间过期天数``exportKEY_COUNTRY=``"CN"``国家``exportKEY_PROVINCE=``"HB"``省份``exportKEY_CITY=``"WH"``城市``exportKEY_ORG=``"test.com"``组织``exportKEY_EMAIL=``"[email protected]"``邮箱