本文已Juniper防火墙为例,介绍IP monitoring。

Juniper的IP monitor类似于思科的SLA ,华为的NQA , Juniper使用到的工具叫做real-time performance monitoring (RPM)  ,当你看到RPM这个单词的时候不要陌生。RPM可以用在很多路由相关的地方,比如静态,比如动态路由等等。详细内容如下。

1.这个RPM有很多的探测功能如下

The device sends out the following probe types:

  • HTTP GET request at a target URL

  • HTTP GET request for metadata at a target URL

  • ICMP echo request to a target address (the default)

  • ICMP timestamp request to a target address

  • UDP ping packets to a target device

  • UDP timestamp requests to a target address

  • TCP ping packets to a target device

我们以常用的PING举例,看下如下的图片,内网接入了四家运营商,那么如何使用RPM去做运营商线路的监控与切换呢?

2.Juniper SRX的接口配置

root@SRX-Firewall# show interfaces | display set
set interfaces ge-0/0/0 unit 0 family inet address 2.1.1.1/30
set interfaces ge-0/0/1 unit 1 family inet address 2.1.1.5/30
set interfaces ge-0/0/2 unit 2 family inet address 2.1.1.9/30
set interfaces ge-0/0/4 unit 80 family inet address 80.10.126.1/24

3.实现的目标是,当ISP1线路down ,ISP2链路接管; ISP1与ISP2链路down , ISP3接管,以此类推,具体的RPM配置如下

set services rpm probe Failover1 test probe-ge1 probe-type icmp-ping
set services rpm probe Failover1 test probe-ge1 target address 2.1.1.2<<<< Monitoring 1 address
set services rpm probe Failover1 test probe-ge1 probe-count 5
set services rpm probe Failover1 test probe-ge1 probe-interval 1
set services rpm probe Failover1 test probe-ge1 test-interval 5
set services rpm probe Failover1 test probe-ge1 thresholds total-loss 3
set services rpm probe Failover1 test probe-ge1 next-hop 2.1.1.2set services rpm probe Failover2 test probe2-ge1 probe-type icmp-ping
set services rpm probe Failover2 test probe2-ge1 target address 2.1.1.2 <<<< 1st address in probe2
set services rpm probe Failover2 test probe2-ge1 probe-count 5
set services rpm probe Failover2 test probe2-ge1 probe-interval 1
set services rpm probe Failover2 test probe2-ge1 test-interval 5
set services rpm probe Failover2 test probe2-ge1 thresholds total-loss 3
set services rpm probe Failover2 test probe2-ge1 next-hop 2.1.1.2
set services rpm probe Failover2 test probe2-ge2 probe-type icmp-ping
set services rpm probe Failover2 test probe2-ge2 target address 2.1.1.6<<<< 2nd address in probe2
set services rpm probe Failover2 test probe2-ge2 probe-count 5
set services rpm probe Failover2 test probe2-ge2 probe-interval 1
set services rpm probe Failover2 test probe2-ge2 test-interval 5
set services rpm probe Failover2 test probe2-ge2 thresholds total-loss 3
set services rpm probe Failover2 test probe2-ge2 next-hop 2.1.1.6set services rpm probe Failover3 test probe3-ge1 probe-type icmp-ping
set services rpm probe Failover3 test probe3-ge1 target address 2.1.1.2<<<< 1st address in probe3
set services rpm probe Failover3 test probe3-ge1 probe-count 5
set services rpm probe Failover3 test probe3-ge1 probe-interval 1
set services rpm probe Failover3 test probe3-ge1 test-interval 5
set services rpm probe Failover3 test probe3-ge1 thresholds total-loss 3
set services rpm probe Failover3 test probe3-ge1 next-hop 2.1.1.2
set services rpm probe Failover3 test probe3-ge2 probe-type icmp-ping
set services rpm probe Failover3 test probe3-ge2 target address 2.1.1.6<<<< 2nd address in probe3
set services rpm probe Failover3 test probe3-ge2 probe-count 5
set services rpm probe Failover3 test probe3-ge2 probe-interval 1
set services rpm probe Failover3 test probe3-ge2 test-interval 5
set services rpm probe Failover3 test probe3-ge2 thresholds total-loss 3
set services rpm probe Failover3 test probe3-ge2 next-hop 2.1.1.6
set services rpm probe Failover3 test probe3-ge3 probe-type icmp-ping
set services rpm probe Failover3 test probe3-ge3 target address 2.1.1.10<<<< 3rd address in probe3
set services rpm probe Failover3 test probe3-ge3 probe-count 5
set services rpm probe Failover3 test probe3-ge3 probe-interval 1
set services rpm probe Failover3 test probe3-ge3 test-interval 5
set services rpm probe Failover3 test probe3-ge3 thresholds total-loss 3
set services rpm probe Failover3 test probe3-ge3 next-hop 2.1.1.10

4.接下来调用监控策略 ,如果ISP1链路down了,就走ISP2的链路,我们看下ip-monitoring的状态就很清晰了。

set services ip-monitoring policy GE1 match rpm-probe Failover1
set services ip-monitoring policy GE1 then preferred-route route 0.0.0.0/0 next-hop 2.1.1.6
set services ip-monitoring policy GE1 then preferred-route route 0.0.0.0/0 preferred-metric 4
set services ip-monitoring policy GE1_2 match rpm-probe Failover2
set services ip-monitoring policy GE1_2 then preferred-route route 0.0.0.0/0 next-hop 2.1.1.10
set services ip-monitoring policy GE1_2 then preferred-route route 0.0.0.0/0 preferred-metric 3
set services ip-monitoring policy GE1_2_3 match rpm-probe Failover3
set services ip-monitoring policy GE1_2_3 then preferred-route route 0.0.0.0/0 next-hop 80.10.126.254
set services ip-monitoring policy GE1_2_3 then preferred-route route 0.0.0.0/0 preferred-metric 2

---------------------All ISPs are up-----------------------------------

[edit]
root@SRX-Firewall# run show services ip-monitoring status
#这里解释一下,当步骤3的failover1探测正常时,那么路由的下一跳是走2.1.1.2; 当failover1探测失败后,那么会匹配步骤4的策略,下一跳走2.1.1.6,以此类推。
Policy - GE1 (Status: PASS)RPM Probes:Probe name             Test Name       Address          Status---------------------- --------------- ---------------- ---------Failover1              probe-ge1       2.1.1.2          PASSRoute-Action:route-instance    route             next-hop         state----------------- ----------------- ---------------- -------------inet.0            0.0.0.0/0         2.1.1.6          NOT-APPLIEDPolicy - GE1_2 (Status: PASS)RPM Probes:Probe name             Test Name       Address          Status---------------------- --------------- ---------------- ---------Failover2              probe2-ge1      2.1.1.2          PASSFailover2              probe2-ge2      2.1.1.6          PASSRoute-Action:route-instance    route             next-hop         state----------------- ----------------- ---------------- -------------inet.0            0.0.0.0/0         2.1.1.10         NOT-APPLIEDPolicy - GE1_2_3 (Status: PASS)RPM Probes:Probe name             Test Name       Address          Status---------------------- --------------- ---------------- ---------Failover3              probe3-ge1      2.1.1.2          PASSFailover3              probe3-ge2      2.1.1.6          PASSFailover3              probe3-ge3      2.1.1.10         PASSRoute-Action:route-instance    route             next-hop         state----------------- ----------------- ---------------- -------------inet.0            0.0.0.0/0         80.10.126.254    NOT-APPLIED[edit]
root@SRX-Firewall# run show route 0.0.0.0inet.0: 28 destinations, 28 routes (28 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both0.0.0.0/0          *[Static/5] 08:57:12> to 2.1.1.2 via ge-0/0/0.0

Juniper IP monitor(RPM)相关推荐

  1. (四) Shell脚本简介,变量的定义、引用、删除,常见状态和运算符,命令,软件的安装和维护(RPM),软件的安装和维护(yum)

    1,课程回顾 2,本章重点 shell 脚本 软件管理(rpm yum) 3,具体内容 3.1 Shell脚本简介 3.1.1 什么是shell脚本 1.当命令不在命令行中执行,而是从一个文件中执行时 ...

  2. 一篇文章带你详解 TCP/IP 协议(下)

    前面的第一二三章已在上篇讲解,还没看过的可以先看看:一篇文章带你详解 TCP/IP 协议(上) 本文继续讲解第四章. 四.网络层中的 IP 协议 IP(IPv4.IPv6)相当于 OSI 参考模型中的 ...

  3. lamp软件包安装(rpm)

    lamp软件包安装(rpm) 小编今天给大家来讲一下lamp的软件包安装--RPM.Lamp就是由linux.php.apache.mysql组成.Linux是一个非常稳定的系统,所以用它来做运行环境 ...

  4. 一篇文章带你熟悉 TCP/IP 协议-(三)

    一篇文章带你熟悉 TCP/IP协议-(一)-https://segmentfault.com/a/11... 一篇文章带你熟悉 TCP/IP协议-(二)-https://segmentfault.co ...

  5. Python搭建代理IP池(一)- 获取 IP

    使用爬虫时,大部分网站都有一定的反爬措施,有些网站会限制每个 IP 的访问速度或访问次数,超出了它的限制你的 IP 就会被封掉.对于访问速度的处理比较简单,只要间隔一段时间爬取一次就行了,避免频繁访问 ...

  6. 计算机网络漫谈:OSI七层模型与TCP/IP四层(参考)模型(转载)

    PS:原文写的太好了,忍不住转载了 <计算机网络漫谈:OSI七层模型与TCP/IP四层(参考)模型> 文章目录 一.七层?四层? 1.为什么需要协议? 2.OSI七层模型是干什么的? 3. ...

  7. Serdes系列总结——Xilinx serdes IP使用(一)——3G serdes

    Serdes系列总结--Xilinx serdes IP使用(一)--3G serdes IP核的详细设置 IP example的使用 附件 器件:Xilinx zynq 7035 版本:vivado ...

  8. Serdes系列总结——Xilinx serdes IP使用(二)——10G serdes

    Serdes系列总结--Xilinx serdes IP使用(二)--10G serdes IP核的详细设置 IP example的使用 附件 器件:Xilinx zynq 7035 版本:vivad ...

  9. 快速上手Xilinx DDR3 IP核(3)----把MIG IP核封装成一个FIFO(上)(Native接口)

    写在前面 本文将把Xilinx的MIG IP核DDR3的Native接口进行二次封装,将其封装成一个类似FIFO的接口,使其应用起来更加方便简单. DDR3系列文章: 快速上手Xilinx DDR3 ...

最新文章

  1. 如何设置VSS源代码管理工具使用KDiff3
  2. java jtextpane插入图片_java中怎么在JTextArea中添加图片?
  3. 安装PHP可能会出现的错误
  4. 以太坊搭建,不能使用puppeth 创建初始块,报错Fatal: Failed to write genesis block: unsupported fork ordering: eip15
  5. 非线性光纤光学_1.56 m波段高能量百飞秒光纤激光器
  6. Java布局怎么加图片组件_java – 将图像缩略图添加到网格中的布局...
  7. 语义分割深度学习方法集锦
  8. 计算机网络的网络层功能在内完成,计算机网络习题及答案
  9. megento 获取url参数
  10. 动态规划入门(一)——数字三角形
  11. zabbix4.2-zabbix自动发现规则
  12. 前端复习笔记(二)——CSS
  13. 从零开始学androidBroadCast广播.四十五.
  14. 简单常用的10个excel公式
  15. c语言malloc函数的用法和意义
  16. [IOS]swift如何换行
  17. linux桌面 任务栏,状态栏消失恢复
  18. 逻辑智力测试题内附详细答案
  19. python package dist-info
  20. 使用python和PyQt5编写爬取百度图片的界面工具

热门文章

  1. keil编译时遇到error:L6002U
  2. python矩阵的维度减少(squeeze)
  3. swift 4 tableViewCell动态加载网络图片问题处理
  4. 微信中调用地图导航 可唤醒高德百度地图app(vue)
  5. android Application
  6. 成功解决:ERROR: Cannot find command ‘git‘ - do you have ‘git‘ installed and in your PATH?
  7. 系统集成项目管理工程师备考经验之谈
  8. 被忽略的错误——这个我一直都是这么写的啊!
  9. stm32怎么基于ds1302实现闹钟功能,不使用定时器
  10. H3C交换机风扇风道报警处理