cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
462
Views
20
Helpful
11
Replies
Highlighted
Beginner

Cisco 897 VA LTE // How to stick to a manual selected network ?

Hi all,

 

I've a router that needs to be one a specific network, and not roam to another one. I'm not that familiar with the cellular part of cisco routers but I've found a command that should do the trick. But when I checked the router after a while, it had switched over to another network. This also happened after a reload of the router. 

 

Command I have tried:

 

cellular 0 lte plmn select force 242 14 2 lte permanent

This is based on:

Available PLMNs at : 19:30:40 UTC Wed Oct 7 2020
Idx MCC MNC RAT     Desc
1   242 14  lte     ice+
2   242 2   lte     NetCom
3   242 2   umts    NetCom
4   242 2   gsm     NetCom
5   242 1   lte     TELENOR
6   242 1   gsm     TELENOR
7   242 1   umts    TELENOR

Negotiated network MTU is 1430

So after I've entered the first command it will switch over:

sh cel 0 network
Current System Time = Fri Oct 9 6:24:33 2020
Current Service Status = Normal
Current Service = Packet switched
Current Roaming Status = Home
Network Selection Mode = Manual
Network = 242-014
Mobile Country Code (MCC) = 242
Mobile Network Code (MNC) = 14
Packet switch domain(PS) state = Attached
Registration state(EMM) = Registered
EMM Sub State = Normal Service
Tracking Area Code (TAC) = 51001
Cell ID = 232998
Negotiated network MTU is 1430

But after a while:

[...]
Current Service Status = Normal
Current Service = Packet switched
Current Roaming Status = Roaming
Network Selection Mode = Manual
Network = N NetCom
Mobile Country Code (MCC) = 242
Mobile Network Code (MNC) = 2
Packet switch domain(PS) state = Attached
Registration state(EMM) = Registered
EMM Sub State = Normal Service
Tracking Area Code (TAC) = 2319
Cell ID = 33702411

How can I disable roaming to other networks? Or stick it to the one I chose? 

 

Cisco IOS Software, C800 Software (C800-UNIVERSALK9-M), Version 15.7(3)M4a, RELEASE SOFTWARE (fc1)


chat-script lte "" "AT!CALL" TIMEOUT 20 "OK" [..] interface Cellular0 ip address negotiated ip nat outside ip virtual-reassembly in encapsulation slip dialer in-band dialer string lte dialer watch-group 1 [..] dialer watch-list 1 ip 8.8.8.8 255.255.255.255 dialer watch-list 1 delay route-check initial 60 dialer watch-list 1 delay connect 1

[..//..]

#sh cel 0 radio
Radio power mode = online
LTE Rx Channel Number = 6200
LTE Tx Channel Number = 24200
LTE Band = 20
LTE Bandwidth = 10 MHz
Current RSSI = -59 dBm
Current RSRP = -86 dBm
Current RSRQ = -8 dB
Current SNR = 13.8 dB
Physical Cell Id = 0x146
Number of nearby cells = 2
Idx PCI (Physical Cell Id)
--------------------------------
1 326
2 324
Radio Access Technology(RAT) Preference = LTE
Radio Access Technology(RAT) Selected = LTE
2 ACCEPTED SOLUTIONS

Accepted Solutions
Highlighted

Hello,

 

an EEM script is a great idea, however, I would tweak it and run it only when the network the cellular is attached to actually changes.

 

The script below runs every minute and checks for the MNC value, if it changes to '2', the command will be run.

 

event manager applet CELL_ROAMING
event timer watchdog time 60
action 1.0 cli command "enable"
action 2.0 cli command "show cellular 0 network | inc (MNC)"
action 3.0 string match "2" "$_cli_result"
action 4.0 if $_string_result eq "1"
action 5.0 syslog msg "Roaming to undesired network"
action 6.0 cli command "cellular 0 lte plmn select force 242 14 2 lte permanent"

View solution in original post

Highlighted

event manager applet CELL_ROAMING
event timer watchdog time 60
action 1.0 cli command "enable"
action 2.0 cli command "show cellular 0 network | inc (MNC)"
action 3.0 string match "14" "$_cli_result"
action 4.0 if $_string_result ne "14"
action 5.0 syslog msg "Roaming to undesired network"
action 6.0 cli command "cellular 0 lte plmn select force 242 14 2 lte permanent"

View solution in original post

11 REPLIES 11
Highlighted
VIP Expert

Hello,

 

there was another post recently asking a similar question:

 

https://community.cisco.com/t5/routing/4g-lte-cards-can-i-force-attachment-to-a-given-cell-site/m-p/4158285

Highlighted

Hi and thanks, 

So the short answer to my question is no, its not possible at the current time? 

 

Edit:

How about an event manager applet as a workaround? I've never used it before, but that might work?

 

event manager applet ICEPLUS
 event timer cron cron-entry "0 */4 * * *"
 action 1.0 cli command "enable"
 action 1.1 cli command "cellular 0 lte plmn select force 242 14 2 lte permanent"
!

 This will run the command every 4 hours. 

Highlighted

Hello,

 

an EEM script is a great idea, however, I would tweak it and run it only when the network the cellular is attached to actually changes.

 

The script below runs every minute and checks for the MNC value, if it changes to '2', the command will be run.

 

event manager applet CELL_ROAMING
event timer watchdog time 60
action 1.0 cli command "enable"
action 2.0 cli command "show cellular 0 network | inc (MNC)"
action 3.0 string match "2" "$_cli_result"
action 4.0 if $_string_result eq "1"
action 5.0 syslog msg "Roaming to undesired network"
action 6.0 cli command "cellular 0 lte plmn select force 242 14 2 lte permanent"

View solution in original post

Highlighted

Thats just amazing! Thanks a lot!  

Highlighted

added "action 7.0 end" 

Highlighted

Hello,

 

thinking about the script again, you might want to tweak the MNC value and run the script whenever the value is NOT 14:

 

event manager applet CELL_ROAMING
event timer watchdog time 60
action 1.0 cli command "enable"
action 2.0 cli command "show cellular 0 network | inc (MNC)"
action 3.0 string match "14" "$_cli_result"
action 4.0 if $_string_result eq "0"
action 5.0 syslog msg "Roaming to undesired network"
action 6.0 cli command "cellular 0 lte plmn select force 242 14 2 lte permanent"

 

I'll test this myself and get back with you...

Highlighted

event manager applet CELL_ROAMING
event timer watchdog time 60
action 1.0 cli command "enable"
action 2.0 cli command "show cellular 0 network | inc (MNC)"
action 3.0 string match "14" "$_cli_result"
action 4.0 if $_string_result ne "14"
action 5.0 syslog msg "Roaming to undesired network"
action 6.0 cli command "cellular 0 lte plmn select force 242 14 2 lte permanent"

View solution in original post

Highlighted

Great work Georg! Thanks a lot 

Highlighted

The 'ne "14"' makes sure that the script runs any time your preferred network is NOT selected.

 

How often does the connected network change ? The 60 seconds might be too often, you could change that value accordingly and have the script run less often.

Highlighted

I think it should be "action 4.0 if $_string_result ne "0"", because action 4.0 returns "0" if action 3.0 matches "14".. 

 

Did an echo of the content of the variables: 

Oct 9 20:38:37.825: %HA_EM-6-LOG: CELL_ROAMING: Mobile Network Code (MNC) = 14   [$_cli_result]

Oct 9 20:38:37.825: %HA_EM-6-LOG: CELL_ROAMING: 0 [$_string_result]

 

Ending up with:

event manager applet CELL_ROAMING
 event timer watchdog time 60
 action 1.0 cli command "enable"
 action 2.0 cli command "show cellular 0 network | inc (MNC)"
 action 3.0 string match "14" "$_cli_result"
 action 4.0 if $_string_result ne "0"
 action 5.0  syslog msg "Roaming to undesired network"
 action 6.0  cli command "cellular 0 lte plmn select force 242 14 2 lte permanent"
 action 7.0 end
!
Highlighted

Hello Robert,

 

thanks for the update ! I'll make a note of that. If 'ne "0"' works, then this is what it should be.