Frame Relay如今越来越不流行了,只是在过去的设计中被广泛应用。

所以工作上还是能常常见到的, 这篇博文从二层简单总结下FR的一些概念

在介绍Frame Relay之前,先了解下广播介质和非广播介质的差别:

Broadcast Media (广播介质): Ethernet 、 Token-Ring、FDDI

特点:

  • 源能够同一时候向全部连接(二层)目的地址通话
  • 简化了三层到二层的解析

Non-Broadcast Multi Access (NBMA): Frame Relay、ISDN、ATM etc。

特点:

  • 源不能同一时候和二层相连的全部目的地址通话
  • 三层的广播通过二层反复的单播实现 (pseudo-broadcast)

========三层到二层的地址解析对照=======

广播介质的三层地址解析:远程二层MAC地址和远程三层地址绑定

- IPv4 Adress Resolution Protocol ( ARP)

  • 广播请求 - 谁知道1.1.1.1的MAC地址
  • 单播回复 - 我的MAC是abcd.abcd.abcd

广播介质的三层地址解析:远程或本地的二层MAC地址和远程三层地址绑定

  • 本地FR DLCI和远程IPv4地址绑定
  • 远端ISDN电话和原电IPX地址绑定

- 反向ARP用解析远程三层地址到本地二层地址

- 仅仅有直接相连的设备能够进行解析



NBMA port类型:

多点接口 - 可连接多个二层链路 & 须要三层到二层的解析 (FR & ATM main interface)

单点接口 - 连接一个二层链路 & 不须要三层到二层解析 (PPP link, FR p2p subinterface)

======================================

1. FR 简单介绍

应用了NBMA - 也就意味着潜在存在三层到二层解析问题

DLCI - Data link Connection Identifier (数字链路识别码)

  • 二层寻址
  • DLCI本地有效

LMI - Local Management Interface

  • DTE or DCE 通讯
  • 汇报虚拟链路的状态

2. FR LMI 配置
开启FR
 - encapsulation frame-relay
LMI的类型 ( 自己主动侦測)
 - frame-relay lmi-type 【cisco | ansi | q933a】
- show frame-relay lmi
验证虚拟链接VC状态
- show frame-relay pvc
状态种类:
- active (E2E是好的,至少router 到 switch是ok的)
- inactive (中途出了问题)
- deleted ( 路由器试图用一些參数可是FR交换机不支持,配置错误等)
- static (LMI is disabled,用于back to back FR)

3. FR 地址解析
- 多点port须要三层到二层解析: 想要发包到IP a.b.c.d须要哪个DLCI ?
- 解析的种类
  • 动态解析通过反向ARP请求 (inverse ARP)
  • 静态解析通过命令frame-relay map
- 验证: sh frame-relay map

=======
FR inverse ARP
- 当配置了FR支持的协议,反向ARP自己主动开启
- 请求会在port配置的全部链路上发出
  • 反向APR请求发送能够disable - no frame-relay inverse arp [protocol] [dlci]
  • 回复不能被disable (这是个潜在的问题)
- 自己主动包含了对广播的支持

FR static Mapping
- 手动把本地的二层地址和远程的三层地址绑定
  • frame-relay map [protocol] [address] dlci [broadcast]
  • 和静态ARP的逻辑一样
- 静态配置会覆盖动态配置
- 想支持广播的话须要手动配置
========

路由器的Auto-install和Frame Relay可能引入问题:
 - 假设在NVRAM里没有配置文件,路由器会侦測port的封装模式和发送地址请求
LAN - DHCP
HDLC - SLARP
FR - BOOTP
- 当地址配置过后,路由器就会试图通过TFTP拿到配置

FR在这里出现的问题在第四步:
  1. 侦測封装
  2. 通过DLCI学习LMI
  3. 给全部DLCIs发送BOOTP
  4. 假设请求失败了,会自己主动配置0.0.0.0 mapping
  • 这可能破坏之后的路由配置
  • 解决方法就是save config and reload
=================
最后要提的是点到点port

- 一个port对一条二层链路
- 不须要三层到二层的解析,仅仅须要配置链路号 - frame-relay interface-dlci [dlci]
- 更倾向于点到点配置(能够避免三层以上配置问题)


================
思科官方文档 - 基本配置

An interface is by default a "multipoint" interface so, frame-relay inverse-arp is on (for point-to-point, there is no Inverse ARP). IP split horizon checking is disabled by default for Frame Relay encapsulation, so routing updates come in
and out the same interface. The routers learn the data-link connection identifiers (DLCIs) they need to use from the Frame Relay switch via LMI updates. The routers then Inverse ARP for the remote IP address and create a mapping of local DLCIs and their associated
remote IP addresses.

Spicey
Spicey#show running-config
Building configuration... Current configuration : 1705 bytes
!
version 12.1
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname Spicey
!
!
!
interface Ethernet0
ip address 124.124.124.1 255.255.255.0
!
interface Serial0
ip address 3.1.3.1 255.255.255.0
encapsulation frame-relay
frame-relay interface-dlci 140
!
!
router rip
network 3.0.0.0
network 124.0.0.0
!
line con 0
exec-timeout 0 0
transport input none
line aux 0
line vty 0 4
login
!
end
Prasit
Prasit#show running-config
Building configuration...
Current configuration : 1499 bytes
!
version 12.1
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname Prasit
!
!
!
interface Ethernet0
ip address 123.123.123.1 255.255.255.0
!
!
interface Serial1
ip address 3.1.3.2 255.255.255.0
encapsulation frame-relay
frame-relay interface-dlci 150
!
!
router rip
network 3.0.0.0
network 123.0.0.0
!
!
!
line con 0
exec-timeout 0 0
transport input none
line aux 0
line vty 0 4
login
!
end

验证

  • show frame-relay map

  • show frame-relay pvc

  • show frame-relay lmi

  • ping <device name>

  • show ip route

Spicey#show frame-relay map
Serial0 (up): ip 3.1.3.2 dlci 140(0x8C,0x20C0), dynamic,
broadcast,, status defined, active Spicey#show frame-relay pvc
PVC Statistics for interface Serial0 (Frame Relay DTE)
Active Inactive Deleted Static
Local 1 0 0 0
Switched 0 0 0 0
Unused 0 0 0 0 DLCI = 140, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial0
input pkts 83 output pkts 87 in bytes 8144
out bytes 8408 dropped pkts 0 in FECN pkts0
in BECN pkts 0 out FECN pkts 0 out BECN pkts0
in DE pkts 0 out DE pkts 0
out bcast pkts 41 out bcast bytes 3652
pvc create time 01:31:50, last time pvc status changed 01:28:28
Spicey#show frame-relay lmi
LMI Statistics for interface Serial0 (Frame Relay DTE) LMI TYPE = CISCO
Invalid Unnumbered info 0 Invalid Prot Disc 0
Invalid dummy Call Ref 0 Invalid Msg Type 0
Invalid Status Message 0 Invalid Lock Shift 0
Invalid Information ID 0 Invalid Report IE Len 0
Invalid Report Request 0 Invalid Keep IE Len 0
Num Status Enq. Sent 550 Num Status msgs Rcvd 552
Num Update Status Rcvd 0 Num Status Timeouts 0
Spicey#ping 123.123.123.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 123.123.123.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 36/36/40 ms
Spicey#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS
inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route Gateway of last resort is not set
3.0.0.0/24 is subnetted, 1 subnets
C 3.1.3.0 is directly connected, Serial0
124.0.0.0/24 is subnetted, 1 subnets
C 124.124.124.0 is directly connected, Ethernet0
R 123.0.0.0/8 [120/1] via 3.1.3.2, 00:00:08, Serial0

Prasit#show frame-relay map
Serial1 (up): ip 3.1.3.1 dlci 150(0x96,0x2460), dynamic,
broadcast,, status defined, active Prasit#show frame-relay pvc
PVC Statistics for interface Serial1 (Frame Relay DTE)
Active Inactive Deleted Static
Local 1 0 0 0
Switched 0 0 0 0
Unused 0 0 0 0
DLCI = 150, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial1
input pkts 87 output pkts 83 in bytes 8408
out bytes 8144 dropped pkts 0 in FECN pkts 0
in BECN pkts 0 out FECN pkts 0 out BECN pkts 0
in DE pkts 0 out DE pkts 0
out bcast pkts 38 out bcast bytes 3464
pvc create time 01:34:29, last time pvc status changed 01:28:05 Prasit#show frame-relay lmi
LMI Statistics for interface Serial1 (Frame Relay DTE) LMI TYPE = CISCO
Invalid Unnumbered info 0 Invalid Prot Disc 0
Invalid dummy Call Ref 0 Invalid Msg Type 0
Invalid Status Message 0 Invalid Lock Shift 0
Invalid Information ID 0 Invalid Report IE Len 0
Invalid Report Request 0 Invalid Keep IE Len 0
Num Status Enq. Sent 569 Num Status msgs Rcvd 570
Num Update Status Rcvd 0 Num Status Timeouts 0 Prasit#ping 124.124.124.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 124.124.124.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 36/36/36 ms
Prasit#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS
inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is not set
3.0.0.0/24 is subnetted, 1 subnets
C 3.1.3.0 is directly connected, Serial1
R 124.0.0.0/8 [120/1] via 3.1.3.1, 00:00:19, Serial1
123.0.0.0/24 is subnetted, 1 subnets
C 123.123.123.0 is directly connected, Ethernet0

參考资料:

Comprehensive Guide to Configuring and Troubleshooting Frame Relay

Frame Relay - 简单介绍及基本配置的更多相关文章

  1. Yarn简单介绍及内存配置

    本文出自:http://blog.chinaunix.net/uid/28311809/abstract/1.html 在这篇博客中,主要介绍了Yarn对MRv1的改进,以及Yarn简单的内存配置和Y ...

  2. Android Studio使用心得 - 简单介绍与环境配置

    FBI Warning:欢迎转载,但请标明出处:http://blog.csdn.net/codezjx/article/details/38544823,未经本人允许请勿用于商业用途.感谢支持! 关 ...

  3. .frame类库简单介绍与使用

    .a静态库是Unix推出的,几乎所有平台都可以使用: .framework是Apple推出的,是对.a静态库的封装,方便使用. 1.新建framework类库项目 2.生成的类库中,自定义的源头文件需 ...

  4. 分配IP地址的好东西 DHCP以及NAT简单介绍

    主机配置协议DHCP 1.DHCP应用场景 2.DHCP基础原理 3.NAT简单介绍 4.配置命令 1.手工配置IP地址,工作量比较大而且不好管理,如果用户自己修改参数,可能会导致ip地址冲突,这个时 ...

  5. Mahout学习之Mahout简单介绍、安装、配置、入门程序測试

    一.Mahout简单介绍 查了Mahout的中文意思--驭象的人,再看看Mahout的logo,好吧,想和小黄象happy地玩耍,得顺便陪陪这位驭象人耍耍了... 附logo: (就是他,骑在象头上的 ...

  6. SiteMesh配置下载使用(简单介绍)

    简单介绍 SiteMesh 是一个网页布局和修饰的框架,利用它可以将网页的内容和页面结构分离,以达到页面结构共享的目的. Sitemesh是由一个基于Web页面布局.装饰以及与现存Web应用整合的框架 ...

  7. 一个性能较好的jvm參数配置以及jvm的简单介绍

    一个性能较好的webserverjvm參数配置: -server //服务器模式 -Xmx2g //JVM最大同意分配的堆内存,按需分配 -Xms2g //JVM初始分配的堆内存.一般和Xmx配置成一 ...

  8. Log4j slf4j 配置简单介绍

    Log4j slf4j 配置简单介绍 先借鉴一篇很好的文章 为什么要使用SLF4J而不是Log4J import org.slf4j.Logger; import org.slf4j.LoggerFa ...

  9. Spring boot自定义拦截器和拦截器重定向配置简单介绍

    大家好: 本文简单介绍一下用于权限控制的Spring boot拦截器配置,拦截器重定向问题. 开发工具:jdk1.8   idea2017(付费版,网上找的破解教程) 1,首先使用idea创建一个Sp ...

随机推荐

  1. Python9-模块1-day19

    在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict.namedtuple和Ord ...

  2. R语言基础-data.frame

    data.frame比较像表格,每一列是一个向量,即每列中的元素是同一类型:所有列具有相同的长度. x = 10:1 y = -4:5 q = c("Ha","oh&qu ...

  3. Spring核心技术(十二)——基于Java的容器配置(二)

    使用@Configuration注解 @Configuration注解是一个类级别的注解,表明该对象是用来指定Bean的定义的.@Configuration注解的类通过@Bean注解的方法来声明Bea ...

  4. django的rest framework框架——版本、解析器、序列化

    一.rest framework的版本使用 1.版本可以写在URL中,通过GET传参,如 http://127.0.0.1:8082/api/users/?version=v1 (1)自定义类获取版本 ...

  5. Knockout v3.4.0 中文版教程-4-通过监控数组工作

    2.通过监控数组工作 1. 监控数组 如果你想检测或者响应一个对象的改变,你用observables.如果你想检测和响应一个集合的改变,使用observableArray.这个在很多情况下都非常有用, ...

  6. Charles-安装和配置

    一. 安装.破解charles工具 1. 安装压缩包中的charles_setup.exe,安装完成后先不启动charles. 2. 在安装文件中找到crack文件,将文件中的charles.jar拷 ...

  7. 【java基础 7】java内存区域分析及常见异常

    本篇博客,主要是读书笔记总结,还有就是结合培训分享的总结,没有太多的技术含量! java 的自动内存管理机制,使得程序员不用为每一个new惭怍的对象写配对的delete/ free代码(回想起C++的 ...

  8. 九度oj 题目1096:日期差值

    题目描述: 有两个日期,求两个日期之间的天数,如果两个日期是连续的我们规定他们之间的天数为两天 输入: 有多组数据,每组数据有两行,分别表示两个日期,形式为YYYYMMDD 输出: 每组数据输出一行, ...

  9. 九度oj 题目1091:棋盘游戏

    题目描述: 有一个6*6的棋盘,每个棋盘上都有一个数值,现在又一个起始位置和终止位置,请找出一个从起始位置到终止位置代价最小的路径:    1.只能沿上下左右四个方向移动    2.总代价是没走一步的 ...

  10. Codeforces 547B. Mike and Feet[单调栈/队列]

    这道题用单调递增的单调栈维护每个数能够覆盖的最大区间即可. 对于   1 2 3 4 5 4 3 2 1 6 这组样例, 1能够覆盖的最大区间是10,2能够覆盖的最大区间是7,以此类推,我们可以使用单 ...