RA概述:
remote access:
广域网的远程连接,按L1分类:
1:通过电路交换网络实现的专线:(circuit switching)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~``
1.1:通过真实的专用物理链路,实现的专线:
一般是通过同步串行链路(V.35)连接的,其支持的二层封装协议主要包括:
HDLC/PPP/SLIP
1.2:通过TDM网络(时分多路复用)实现的专线:
典型有:E1
其支持的二层封装协议与物理专线一样
2:按需拨号的电路交换网络(On-Demand circuit Switched)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
一般用于网络的链路备份.
常见的业务包括:ISDN/PSTN(其中PSTN通常是以异步串行连接)
(ISDN也可以通过异步串行连接)
ISDN分为两种业务:(在中国ISDN交换机类型:Basic-net3)(全数字信道)
BRI:2B+D
PRI:30B+D
B信道:是用户用于传输数据的信道(用户数据信道),其带宽为64KBPS
D信道:是信令信道,不传输用户数据.
PRI:D带宽是64kbps; BRI:D带宽是16kbps
PSTN:56kbps(48~52kbps)(模拟信道)
3:包交换/分组交换(packet switching)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在开始传输数据之前,必须事先建立一条VC(虚电路),用于数据包的传输.
用户的终端设备(CPE)通过同步串行链路连接ISP(局端CO)
常见业务:X.25/FR/ATM
4:宽带接入/Broadband Access
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
有线宽带:
xDSL:主要是传统的电信运营商所经营的网络,主要使用传统的固话网(双绞线),作为最后一公里的末端输入.
(语音+data)
Cable:主要是传统的有线电视运营商所经营的网络,主要使用传统的CATV网络,通过线路的双向改造,作为最后一公里的末端接入.(同轴电缆)
(视频+data)
powerLine Modem:
(电能+Data)
无线宽带:
CDMA/GPRS/PHS/3G
HDLC:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
HDLC一般不推荐,原因有两个:
1:Cisco的HDLC帧头格式,携带了一个cisco的私有位:
其好处:实现HDLC的环境中,支持多协议:IP/IPX/AT (appletalk)
其缺点:只能跟CISCO的设备互通,不能兼容各厂商设备。
(原因是:标准的HDLC只支持单协议:IP)
CISCO默认在串口中,以HDLC为2层封装协议。
2:HDLC协议,本身不支持认证,无法保证安全性
建议使用PPP,PPP有多种可选模块,可以提高网络安全性,提升性能。(PPP可支持认证)
SLIP,相当于是PPP前身,功能单一,趋向淘汰
在CISCO设备上,串行链路默认使用CISCO HDLC,在华为的设备上,默认使用PPP
PPP(Point-to-point protocol)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PPP是业界开放性的标准,支持多协议环境,所有的厂商都可以支持。
HDLC/PPP的对比:
HDLC不支持多协议,PPP支持多协议
HDLC不支持认证,PPP支持认证
LCP(link control Protocol)
负责对L1的物理层链路,进行链路的建立,控制,维护,
NCP(network control protocol)
负责对L3的网络层,向下提供无差别的接口(*CP)
LCP包含了4大网络模块:
1:认证(authentication:PAP/CHAP)
2:压缩(compress)
3:回拨(callback)
4:多链路捆绑(mulit-link)
LAB1:Encapsulation PPP (从HDLC到PPP的迁移)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
step1:确认L1/L2/L3通达
(L2:HDLC)/(L3:网络协议/被路由协议:IP,寻路/路由协议:RIP)
routed routing
L1:V.35 sync serial1/的同步串行链路
L2:HDLC/PPP
L3:IP/RIP
step2:在R1-R3之间的链路改为PPP
R1/R3(config)#in s0
enca ppp
观察:
R1#debug ppp negotiation(PPP的协商)
1:Interface Serial0, changed state to up(L1 up)
2:PPP的认证:
(这是可选项目,如果进行认证,就必须成功,才有NCP的工作)
3:LCP: State is Open
4-1:se1 IPCP: State is Open (IP)
4-2:se1 CDPCP: State is Open (cdp)(show cdp neighbor)
5:Line protocol on interface serial1,changed state to up(L2 up)
检查:
R3#show interfaces s0
serial0 is up,line protocol is up
enca ppp
LCP Open
open:IPCP, CDPCP
测试:
R2#ping 3.3.3.3!!!!!!!!!!!!!!!!!!!!!!!!!!
R1#PPP链路的对方接口的32位主机路由:
C 13.0.0.3/32
R1(config)#in serial 1
R1(config-if)#no peer neighbor-route(取消本路由表里面的32位明细路由,仅对自己有效)
PPP authentication
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
PAP/CHAP (PPP的认证,是链路的认证)
PAP(password authentication protocol)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
两次握手,建议在网络工程中使用双向认证。
两次握手:
1:被认证方,将对方所定义的账号/密码,以明文方式,发送给主认证方。
2:主认证方,把收到的账号/密码,与自己的数据库进行核对后,发回认证成功与否的信息。
PAP的缺点:账号/密码以明文方式,在链路上传输,不安全
LAB2:PAP认证(R1-R3)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
step1:确认链路已经是封装为PPP链路
step2:在本路由器的数据库中,为对方构建账号/密码:
R1(config)#username xx password xx
R3(config)#username yy password yy
step3:选定PPP的认证方式为PAP
R1/3(config-if)#PPP authentication PAP
step4:将“自己在对方数据库中的账号/密码,发送给对方,供对方进行校验
R1(config-if)#ppp pap sent-username XX password XX
R3(config-if)#ppp pap sent-username YY password YY
(密码用户名大小写敏感)
观察:
R3#debug ppp authentication(PPP的认证)
LAB3:使用”主机名“作为”用户名“的简化的PAP认证:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
step1:
R1(config)#username R3 password R3
R3(config)#username R1 password R1
step2:
R1(config-if)#PPP pap sent-username R1 password R1
R3(config-if)#ppp pap sent-username R3 password R3
PPP chap认证(challenge handshake authentication protocol)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3次握手:
chap的优点:
从不在链路传送密码,challenge(X)和response(Y)都是随机数,这两者间是不可逆运算的,可以确保密码不被破译,保证网络的安全性。
1:主认证方的路由器,发出随机数(X=9)
2:被认证方的路由器,将接收的随机数,和事先定义好的密码=7,一起放入MD5的加密器,进行HASH算法的计算加密,把得到的数值y=32,response的形式,发送给主认证方。
3:主认证方,同样进行与第2步相同的操作,将得到的数值y',与从被认证方发来的Y,进行比较:
如果一致,发出认证成功信息:
如果不一致,发送认证失败信息
LAB4:CHAP认证:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
step1: 确认链路已经是封装为PPP链路
step2:为对方建账号/密码:(特别注意:密码必须一致)
R1(config)#username GZ password G-S
R2(config)#username SH password G-S
step3:选定认证方式是CHAP:
R1/2(config-if)#ppp authentication chap
step4:选定某组账号密码,进行CHAP认证
R2(config-if)#ppp chap hostname GZ
R2(config-if)#ppp chap password G-S
R1(config-if)#ppp chap hostname SH
R1(config-if)#ppp chap password G-S
打开接口,观察CHAP认证过程
”authentication failed " 原因是双方密码不一致
“MD/DES compare failed"
step5:在CHAP认证中,密码必须一致:
R1(config)#username xx password xx
R2(config)#username xx password xx
认证成功
LAB6:使用主机名作为用户名,简化的CHAP认证
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
step1:直接使用路由器的主机名,进行CHAP认证:
R1(config)#username R2 password xx
R2(config)#username R1 password xx
step2:在PPP接口中,只需要以下命令:
interface serial 0
enca ppp
ppp authentication chap
PPP/compression PPP 压缩
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PPP压缩可以提高PPP链路的带宽利用率。
支持3种压缩算法:
1:mppc
2:predictor
3:stac
step1:按图配置好IP,确认L1/L2/L3(RIP)
step2: 将R2-R4链路更改为PPP链路
step3:在R2-R4的PPP链路的接口中,启动PPP压缩:(3选1)
3-1:(if-s0)compress mppc
3-2:(if-s0)compress predictor
3-3:(if-s0)compress stac
3-4:TCP头压缩:(语音的数据包,其数据净荷很小,头大身小情况)
(config-if)#ip tcp header-compression
- 菜鸟的java代码审计之旅-0之java基础知识
前言: 对于java的代码审计我就是一个小白,没有代码基础(不会java),从0开始记录我的java漏洞的审计学习之旅.对于java来说是一门很难的语言,但是不去学习就永远不会.对于一门很复杂的语言如 ...
- Object c 基础知识
文件类型说明:.h 头文件,用于定义类.实例变量及类中的方法等定义信息(interface). .m 源文件,定义方法体,可实现objce-c和c方法(implementation). .mm c++ ...
- Python黑帽编程3.0 第三章 网络接口层攻击基础知识
3.0 第三章 网络接口层攻击基础知识 首先还是要提醒各位同学,在学习本章之前,请认真的学习TCP/IP体系结构的相关知识,本系列教程在这方面只会浅尝辄止. 本节简单概述下OSI七层模型和TCP/IP ...
- OpenGL ES 3.0 帧缓冲区对象基础知识
最近在帧缓冲区对象这里卡了一下,不过前面已经了解了相关的OpenGL ES的知识,现在再去了解就感觉轻松多了.现在就进行总结. 基础知识 我们知道,在应用程序调用任何的OpenGL ES命令之前,需要 ...
- 0.Python 爬虫之Scrapy入门实践指南(Scrapy基础知识)
目录 0.0.Scrapy基础 0.1.Scrapy 框架图 0.2.Scrapy主要包括了以下组件: 0.3.Scrapy简单示例如下: 0.4.Scrapy运行流程如下: 0.5.还有什么? 0. ...
- Vue 2.0入门基础知识之全局API
3.全局API 3-1. Vue.directive 自定义指令 Vue.directive用于自定义全局的指令 实例如下: <body> <div id="app&quo ...
- ZYNQ笔记(0):C语言基础知识复习
ZYNQ的SDK是用C语言进行开发的,C语言可以说是当今理工类大学生的必备技能.我本科学C语言时就是对付考试而已,导致现在学ZYNQ是一脸懵逼.现在特开一帖,整理一下C语言的基础知识. 一.定义 1. ...
- 从0开始学爬虫4之requests基础知识
从0开始学爬虫4之requests基础知识 安装requestspip install requests get请求:可以用浏览器直接访问请求可以携带参数,但是又长度限制请求参数直接放在URL后面 P ...
- 第0章Linux环境到内核基础知识
#include<stdio.h> int main(void) { printf("hello world\n"); return 0; } gcc -g -wall ...
随机推荐
- 题解报告:hdu 1232 畅通工程(并查集)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1232 Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了 ...
- Python 必选参数,默认参数,可变参数,关键字参数和命名关键字参数
Py的参数还真是多,用起来还是很方便的,这么多参数种类可见它在工程上的实用性还是非常广泛的. 挺有意思的,本文主要参照Liaoxuefeng的Python教程. #必选参数 def quadratic ...
- unity之Rigidbody属性
Rigidbody属性 Mass表示物体的质量,数值类型为float,默认值为1.大部分物体的质量属性接近于0.1才符合日常生活感官感受,超过10 ,则失去了仿真效果. Drag表示平移阻力,其数值类 ...
- 六时出行 App 隐私政策
六时出行 App 隐私政策 本应用尊重并保护所有使用服务用户的个人隐私权.为了给您提供更准确.更有个性化的服务,本应用会按照本隐私权政策的规定使用和披露您的个人信息.但本应用将以高度的勤勉.审慎义 ...
- C# invoke和begininvoke的用法
namespace invoke和begininvoke的用法 { public partial class Form1 : Form { public Form1() { InitializeCom ...
- BZOJ 4561: [JLoi2016]圆的异或并 扫描线 + set
看题解看了半天...... Code: #include<bits/stdc++.h> #define maxn 200010 #define ll long long using nam ...
- Python编码格式导致的csv读取错误
Python编码格式导致的csv读取错误(pandas.read_csv) 本文记录python小白我今天遇到的这两个问题(csv.reader和pandas.csv_read): pandas模块“ ...
- enote笔记语言(3)
what&why(why not)&how&when&where&which:紫色,象征着神秘而又潜蕴着强大的力量,故取紫色. key&key-memo ...
- 推荐系统相关比赛-kaggle
from: 七月在线 电商推荐与销量预测相关案例 一.预测用户对哪个事件感兴趣(感兴趣不一定去参加) 用户历史参加事件.社交信息.浏览信息(app).要预测的事件 recall:召回率 准确率: 协同 ...
- (C/C++学习)11.随机数组的快速查找
说明:利用随机函数生成一个随机数组,然后对数组进行排列,再利用二分查找快速查找一个数. 一.生成随机数组 time_t ts; //等价于long ts; unsigned int num = tim ...