cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
8155
Views
5
Helpful
10
Replies

Cisco 819 [Dual SIM] - Auto-switch & Fail-over between two Cellular Network (ISPs) based on their "signal quality".

m_mrd2
Level 1
Level 1

Hi all,

I have a Cisco 819G WAN Router with the following specifications:

Model:

Cisco C819HG+7-K9

(Compact Hardened 3G IOS Router with GLOBAL HSPA+ 3GPP Release 7)

Software:

Cisco IOS Software, C800 Software (C800-UNIVERSALK9-M), Version 15.2(3)T, RELEASE SOFTWARE (fc1)

4 FastEthernet interfaces

1 Gigabit Ethernet interface

1 Serial(sync/async) interface

1 terminal line

1 Virtual Private Network (VPN) Module

1 Cellular interface

DRAM configuration is 32 bits wide

255K bytes of non-volatile configuration memory.

254464K bytes of ATA System CompactFlash (Read/Write)

Modem Firmware Version = T1_0_3_2AP R361 CNSZ

Modem Firmware built = 04/15/11

Hardware Version = 1.0

NAME: "Modem 0 on Cellular0", DESCR: "Sierra Wireless Mini Card MC8705 HSPA+R7 modem"

The router have dual SIM enabled from different ISPs, and both connection worked successfully.

Also, it have no problem to failover/auto-switch to secondary SIM when primary SIM is totally down or terminated by mobile provider.

My current problem is that I tried to simulate an Auto-switch & Fail-over between two Cellular Network (ISPs) based on their "signal quality".

I want like this :

When primary SIM connection is not good (Bad coverage), then it will auto switch to secondary SIM (different ISP).

I have setup an IPSEC VPN in 819 router that connect back to my DC.

As you know, VPN connection is very sensitive to connection quality. If the primary SIM network has bad signal quality and higher latency, then the VPN will goes down that will affect/suspend any transaction that currently going through the VPN.

Cisco failover mechanism only works when the SIM is totally down or no connection at all but not on poor signal.

I heard that we can use IPSLA + EEM script but i have no enough understanding on that.

But i need someone help me to create the script based on my brief idea as below :

1. Create IPSLA that will ping to one of the host in DC through VPN.

     eg.

          ip sla 1

           icmp-echo 192.168.1.254 source-interface Vlan1

2. If the ping failed in certain amount of threshold, then we know that the VPN is DOWN. (VPN can't up due to bad signal quality)

3. Then, EEM script will do its magic by switch/failover to another SIM.

Does anyone have any idea to create an IPSLA + EEM script to work around this issue ?

Thanks!!!

1 Accepted Solution

Accepted Solutions

stuartmcgrath
Level 1
Level 1

ok.. Sorry for not getting back to you sooner.. Currently I have setup two script and outline below. This is a cut and paste from the running configuration..

Script 1)  The IP SLA ping a host in our ISP DMZ and when it times out, it label the process as being down and then a script mannually moves to the other SIM card. As there doesn't seem a process for the router\IOS to handle heartbeat configuration between two provider to work out which is has a better signal stenght. In addition, we have a better data plan with our primary provider and therefore, it in our interest to use them as much as possible.

IP SLA - this will ping a host in our network which is know host and always running.

ip sla auto discovery

ip sla 10

icmp-echo X.X.X.X source-interface Loopback0 (Where X..X.X.X is a know host within our network)

timeout 15000

ip sla schedule 10 life forever start-time now

IP tracker

track 10 ip sla 10

delay down 150 up 150

This allow you to track the IP SLA with a timeout wait of 150 sec before it consitting the 3g interface is down.

EEM - Once the IP tracker have label the 3g service as down. This script will cut over to a different ISP.

vent manager applet SIM_Toggle

event tag e1 track 10 state down

event tag e2 timer countdown time 120

trigger

  correlate event e1 or event e2

action 1.0 track read 10

action 1.1 if $_track_state eq "down"

action 1.2  info type snmp oid 1.3.6.1.4.1.9.9.661.1.3.2.1.18.12 get-type exact This is a SNMP script to show who is your provider. Similar to running the command; Show Cellular 0 network

action 1.3  syslog msg "Carrier is $_info_snmp_value"

action 1.4  set x "$_info_snmp_value"

action 1.5  cli command "enable"

action 1.6  if $x eq "XXXXXX" our primary ISP

action 1.7   syslog msg "XXXXX Network Issue. Switching to YYYYY"  Syslog message is send saying it moving backup ISP

action 1.8   cli command "clear interface cellular 0"

action 1.9   cli command "cellular 0 gsm sim activate slot 1"

action 2.0  else

action 2.1   syslog msg "YYYY Network Issue. Switching to YYYY" Syslog message is send saying it moving back to Primary ISP

action 2.2   cli command "clear interface cellular "

action 2.3   cli command "cellular 0 gsm sim activate slot 0"

action 2.4  end

action 2.5  cli command "do clear ip route *"

action 2.6  cli command "do show ip sla statistics"

action 2.7  cli command "do show ip route"

action 2.8  cli command "do show ip interface brief"

action 2.9 end

Script 2)

this is a base script in which it check who the current ISP is and if it the backup, then manually cut over to the Primary provider.

event manager applet Failback-xxxxx

event timer watchdog time 3600

action 1.0 info type snmp oid 1.3.6.1.4.1.9.9.661.1.3.2.1.18.12 get-type exact

action 1.1 syslog msg "Carrier is $_info_snmp_value"

action 1.2 set x "$_info_snmp_value"

action 1.3 cli command "enable"

action 1.4 if $x eq "YYYYY"

action 1.5  syslog msg "Activating XXXXX Sim Card"

action 1.6  cli command "clear interface cellular "

action 1.7  cli command "cellular 0 gsm sim activate slot 0"

action 1.8  cli command "do clear ip route *"

action 1.9  cli command "do show ip sla statistics"

action 2.0  cli command "do show ip route"

action 2.1  cli command "do show ip interface brief"

action 2.2 end

View solution in original post

10 Replies 10

stuartmcgrath
Level 1
Level 1

I am working on a script that works one way but doesn't cut back. You need to reload the router to get it to fail back to the primary SIM.

Hi,

Could you provide/show me your script?

Together we can collaborate to improve the script?

Thanks!

Hi..

I would like to see your script too

best regards

Tue

Hi,

is there any update ?

kindly feed us back

Hi..

I´m also looking into this - but it appears I´m only able to activate one SIM at a time, and therefore I´m not able to see RSSI values from the second ISP.

Is that just me or ?

Best regards

Tue

It's normal case as you can only switch to the other sim after the first one failover



Sent from Cisco Technical Support iPhone App

stuartmcgrath
Level 1
Level 1

ok.. Sorry for not getting back to you sooner.. Currently I have setup two script and outline below. This is a cut and paste from the running configuration..

Script 1)  The IP SLA ping a host in our ISP DMZ and when it times out, it label the process as being down and then a script mannually moves to the other SIM card. As there doesn't seem a process for the router\IOS to handle heartbeat configuration between two provider to work out which is has a better signal stenght. In addition, we have a better data plan with our primary provider and therefore, it in our interest to use them as much as possible.

IP SLA - this will ping a host in our network which is know host and always running.

ip sla auto discovery

ip sla 10

icmp-echo X.X.X.X source-interface Loopback0 (Where X..X.X.X is a know host within our network)

timeout 15000

ip sla schedule 10 life forever start-time now

IP tracker

track 10 ip sla 10

delay down 150 up 150

This allow you to track the IP SLA with a timeout wait of 150 sec before it consitting the 3g interface is down.

EEM - Once the IP tracker have label the 3g service as down. This script will cut over to a different ISP.

vent manager applet SIM_Toggle

event tag e1 track 10 state down

event tag e2 timer countdown time 120

trigger

  correlate event e1 or event e2

action 1.0 track read 10

action 1.1 if $_track_state eq "down"

action 1.2  info type snmp oid 1.3.6.1.4.1.9.9.661.1.3.2.1.18.12 get-type exact This is a SNMP script to show who is your provider. Similar to running the command; Show Cellular 0 network

action 1.3  syslog msg "Carrier is $_info_snmp_value"

action 1.4  set x "$_info_snmp_value"

action 1.5  cli command "enable"

action 1.6  if $x eq "XXXXXX" our primary ISP

action 1.7   syslog msg "XXXXX Network Issue. Switching to YYYYY"  Syslog message is send saying it moving backup ISP

action 1.8   cli command "clear interface cellular 0"

action 1.9   cli command "cellular 0 gsm sim activate slot 1"

action 2.0  else

action 2.1   syslog msg "YYYY Network Issue. Switching to YYYY" Syslog message is send saying it moving back to Primary ISP

action 2.2   cli command "clear interface cellular "

action 2.3   cli command "cellular 0 gsm sim activate slot 0"

action 2.4  end

action 2.5  cli command "do clear ip route *"

action 2.6  cli command "do show ip sla statistics"

action 2.7  cli command "do show ip route"

action 2.8  cli command "do show ip interface brief"

action 2.9 end

Script 2)

this is a base script in which it check who the current ISP is and if it the backup, then manually cut over to the Primary provider.

event manager applet Failback-xxxxx

event timer watchdog time 3600

action 1.0 info type snmp oid 1.3.6.1.4.1.9.9.661.1.3.2.1.18.12 get-type exact

action 1.1 syslog msg "Carrier is $_info_snmp_value"

action 1.2 set x "$_info_snmp_value"

action 1.3 cli command "enable"

action 1.4 if $x eq "YYYYY"

action 1.5  syslog msg "Activating XXXXX Sim Card"

action 1.6  cli command "clear interface cellular "

action 1.7  cli command "cellular 0 gsm sim activate slot 0"

action 1.8  cli command "do clear ip route *"

action 1.9  cli command "do show ip sla statistics"

action 2.0  cli command "do show ip route"

action 2.1  cli command "do show ip interface brief"

action 2.2 end

stuartmcgrath

Thanks bro!!!!

I will try out this wonderful script.

TQVM!!!!!!!

nettarzan
Level 1
Level 1

Hi m_mrd2@yahoo.com,

I am trying to configure Cisco 819 Dual SIM router for different ISP's and trying to achieve auto fall-back. However only one service is coming up and the other is not. Kindly provide me a lead or you can provide me with sample configuration.

ISP1: BSNL

ISP2: Vodafone

NAME: "C819G-U-K9", DESCR: "C819G-U-K9 chassis, Hw Serial#: XXXXXXXXXXX, Hw Revision: 3.0"

PID: C819G-U-K9        , VID: V01 , SN: XXXXXXXXXXX

NAME: "C819G Mother board on Slot 0", DESCR: "C819G Mother board"

PID: C819G-U-K9        , VID: V01 , SN:XXXXXXXXXXX

NAME: "Modem 0 on Cellular0", DESCR: "Sierra Wireless Mini Card MC8795V HSPA modem"

PID: MC8795V           , VID: 1.0, SN:XXXXXXXXXXX

IOS Version: c800-universalk9-mz.SPA.152-4.M4.bin

Thanks!

Hi , 

 

I am Also Facing the Same issue , ditto , with the same Model Router & ISP's , Did you get any resolution for this ???

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: